public virtual string GenerateDescriptionStatement(Expressions.CreateColumnExpression expression) { if (string.IsNullOrEmpty(expression.Column.ColumnDescription)) { return(string.Empty); } string initialDescriptionStatement = GenerateColumnDescription( "Description", expression.SchemaName, expression.TableName, expression.Column.Name, "Description:" + expression.Column.ColumnDescription); if (expression.Column.AdditionalColumnDescriptions.Count == 0) { return(initialDescriptionStatement); } else { initialDescriptionStatement = "Description:" + expression.Column.ColumnDescription; var descriptionsList = new List <string> { initialDescriptionStatement }; descriptionsList.AddRange(from description in expression.Column.AdditionalColumnDescriptions let newDescriptionStatement = description.Key + ":" + description.Value select newDescriptionStatement); return(GenerateColumnDescription("Description", expression.SchemaName, expression.TableName, expression.Column.Name, string.Join("\r\n", descriptionsList))); } }
public override string Generate(Expressions.CreateColumnExpression expression) { expression.Column.AdditionalFeatures.Add(new KeyValuePair <string, object>("IsCreateColumn", true)); return(string.Format( "ALTER TABLE {0} ADD COLUMN {1}", Quoter.QuoteTableName(expression.TableName, expression.SchemaName), Column.Generate(expression.Column))); }
public virtual string GenerateDescriptionStatement(Expressions.CreateColumnExpression expression) { if (string.IsNullOrEmpty(expression.Column.ColumnDescription)) { return(string.Empty); } return(GenerateColumnDescription( expression.SchemaName, expression.TableName, expression.Column.Name, expression.Column.ColumnDescription)); }
public override void Process(Expressions.CreateColumnExpression expression) { truncator.Truncate(expression); CheckColumn(expression.TableName, expression.Column.Name); LockColumn(expression.TableName, expression.Column.Name); RegisterColumnCreation(expression.TableName, expression.Column.Name); InternalProcess(Generator.Generate(expression)); if (expression.Column.IsIdentity) { CreateSequenceForIdentity(expression.TableName, expression.Column.Name); } /*if (FBOptions.TransactionModel == FirebirdTransactionModel.AutoCommitOnCheckFail) * CommitRetaining();*/ if (FBOptions.TransactionModel != FirebirdTransactionModel.None) { CommitRetaining(); } }
public void Process(Expressions.CreateColumnExpression expression) { Process(Generator.Generate(expression)); }