当我试图建立关系时,似乎出现了冲突,因为我曾经在数据库中有一张表,但现在已经删除了。虽然这张表在对象资源管理器中不再显示,但错误提示说“发生异常,新名称已被用作‘OBJECT’名称,并且会造成重复。” 那么在哪里可以删除所有与该对象相关的引用,而不仅仅是表名呢?
当我试图建立关系时,似乎出现了冲突,因为我曾经在数据库中有一张表,但现在已经删除了。虽然这张表在对象资源管理器中不再显示,但错误提示说“发生异常,新名称已被用作‘OBJECT’名称,并且会造成重复。” 那么在哪里可以删除所有与该对象相关的引用,而不仅仅是表名呢?
SELECT *
from sys.objects
where name = 'YourName'
搜索一下,看看有什么弹出来的。(“对象”包括表、视图、存储过程、函数、默认值和其他很多模糊的东西。)
每次运行一个需要删除表格然后立即将另一个表格重命名为相同名称的脚本时,我都会遇到相同的错误。在另一个论坛上,我看到了这个建议:
我无法解释它为什么有效,但它确实拯救了我的代码。Leave the schema out of the new table name when renaming:
sp_RENAME '[schema.OldTableName]' , '[NewTableName]'