Example #1
0
        /// <summary>
        /// Добавляет колонку
        /// </summary>
        /// <param name="table">Таблица</param>
        /// <param name="column">Колонка</param>
        public void AddColumn(Table table, Column column)
        {
            if (!column.Nullable && (column.Constraint == null || !(column.Constraint is Default)))
            {
                throw new ArgumentException();
            }

            try
            {
                ExecuteNonQuery(razor.Parse(TemplateManager.GetAddColumnTemplate(), new object[] { table, column }, "add column"));
            }
            catch (TemplateCompilationException ex)
            {
                ex.Errors.ToList().ForEach(p => Console.WriteLine(p.ErrorText));
            }

            log.Info("Добавлен столбец {0} в таблицу {1}", column.Name, table.Name);
        }