0
我遇到某人丟棄表的情況,但外鍵仍留在sys.foreign_keys中。有沒有辦法刪除不再有表的外鍵,或者我應該嘗試從sys.foreign_keys中刪除行嗎?從表格丟棄的外鍵丟失
我遇到某人丟棄表的情況,但外鍵仍留在sys.foreign_keys中。有沒有辦法刪除不再有表的外鍵,或者我應該嘗試從sys.foreign_keys中刪除行嗎?從表格丟棄的外鍵丟失
修改系統表是壞主意。 不要那樣做。事實上,SQL Server不會允許你輕鬆完成。
你應該首先嚐試用以下命令:
DBCC CHECKDB
DBCC CHECKCATALOG
DBCC CHECKCONSTRAINTS (constraint_name)
(如果省略數據庫名稱,則使用當前數據庫)。 如果確實沒有表的外鍵,dbcc應該檢測到它。從dbcc輸出中讀取結果並注意錯誤消息。
此外,嘗試:
SELECT
name,
is_disabled,
is_not_trusted
FROM sys.foreign_keys
WHERE is_disabled = 1
OR is_not_trusted = 1
,看看您是否可以從SQL Server的更多信息。