public override string DropForeignKey(ForeignKey foreignKey) { var sql = new StringBuilder("alter table "); this.AppendQuotedTableName(sql, foreignKey.ChildColumn.Map); sql.Append(" drop foreign key "); this.AppendQuotedName(sql, foreignKey.Name); return sql.ToString(); }
private string CreateForeignKey(ForeignKey foreignKey) { var sql = new StringBuilder(); sql.Append("alter table "); this.dialect.AppendQuotedTableName(sql, foreignKey.ChildColumn.Map); sql.Append(" add constraint ").Append(foreignKey.Name).Append(" foreign key ("); this.dialect.AppendQuotedName(sql, foreignKey.ChildColumn.DbName); sql.Append(") references "); this.dialect.AppendQuotedTableName(sql, foreignKey.ParentMap); sql.Append("("); this.dialect.AppendQuotedName(sql, foreignKey.ParentMap.PrimaryKey.DbName); sql.Append(")"); return sql.ToString(); }
public override string DropForeignKey(ForeignKey foreignKey) { throw new InvalidOperationException("There is no Ansi-SQL way of dropping a foreign key."); }
public abstract string DropForeignKey(ForeignKey foreignKey);
public string DropForeignKey(ForeignKey foreignKey) { return this.dialect.DropForeignKey(foreignKey); }
public override string DropForeignKey(ForeignKey foreignKey) { throw new System.NotImplementedException(); }
public override string CreateForeignKey(ForeignKey foreignKey) { return string.Empty; // Not supported yet - needs to drop and recreate tables etc }