public override string Generate(Expressions.CreateConstraintExpression expression) { var constraintName = Quoter.QuoteConstraintName(expression.Constraint.ConstraintName, expression.Constraint.SchemaName); var constraintType = expression.Constraint.IsPrimaryKeyConstraint ? "PRIMARY KEY" : "UNIQUE"; var quotedNames = expression.Constraint.Columns.Select(q => Quoter.QuoteColumnName(q)); var columnList = string.Join(", ", quotedNames.ToArray()); return(string.Format( "ALTER TABLE {0} ADD CONSTRAINT {1} {2} ({3})", Quoter.QuoteTableName(expression.Constraint.TableName, expression.Constraint.SchemaName), constraintName, constraintType, columnList)); }
public void Process(Expressions.CreateConstraintExpression expression) { Process(Generator.Generate(expression)); }