我将使用FluentMigrator来进行SQL Server 2014数据库的迁移。如果我使用Rename构建器重命名表如下:
我需要删除并重新创建引用表的旧名称的任何外键吗?还是SQL(或FM)知道更新引用?
Rename.Table("Old Name").To("NewName");
我需要删除并重新创建引用表的旧名称的任何外键吗?还是SQL(或FM)知道更新引用?
Rename.Table("Old Name").To("NewName");
您不必担心外键问题,它将自动指向新的表名。
但是,如果该表在任何存储过程、函数、视图或触发器中使用,则在重命名表后,您必须手动更改脚本以引用新名称,否则在执行上述任何对象时,将会出现无效对象名称错误。
如评论中所述,如果旧表名在应用程序代码中使用,则需要手动更改为新表名。