所以这对你来说很有趣……我正在将一个完整的数据库(db1)
和结构从一个数据库复制到另一个数据库(db2)
,在这样做之前,我决定尝试从 db2 中删除所有表。我照常做了sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAING ALL'
,然后sp_msforeachtable 'DROP TABLE ?'
让我很沮丧的是,它删除了所有可能只剩下 6 张桌子的东西。这些表似乎仍然有对它们的外键引用。我进行了搜索,发现了这个SQL DROP TABLE 外键约束,它向我展示了如何查找然后尝试删除这些外键引用。
这是有趣的部分:在尝试使用该信息删除它们时,我被告知 ssms 找不到该对象,因为它不存在或我没有权限。外键引用来自我之前删除的表。
这怎么可能?我到底要如何从这里进步?