Sql-Server

SQL Server 2012 中缺少系統表

  • May 13, 2015

我將 SQL Server 2000 數據庫恢復到 2005,然後恢復到 2012。我現在無法看到 SQL Server 2000 中存在的系統表。

為什麼?

您應該使用目錄視圖而不是舊的系統表(例如,sys.objects代替sys.sysobjectssys.columns代替sys.syscolumns)。系統表仍然存在,但它們的存在只是為了向後兼容。其中一些已被移至隱藏的系統數據庫,mssqlsystemresource和/或僅在與專用管理員連接連接時可見。當然,您需要某些權限才能查看新的目錄視圖

請閱讀舊文件中的註釋,例如sys.syscolumns

包含此 SQL Server 2000 系統表作為向後兼容的視圖。我們建議您改用目前的 SQL Server 系統視圖。要查找等效的系統視圖,請參閱將 SQL Server 2000 系統表映射到 SQL Server 2005 系統視圖。此功能將在 Microsoft SQL Server 的未來版本中刪除。避免在新的開發工作中使用此功能,併計劃修改目前使用此功能的應用程序。

這是他們提到的映射文件的連結,但不要連結。這應該向您展示如何開始從,比如說,過渡syscolumnssys.columns.

停止使用舊系統表。學習新的元數據;它就在這裡。

引用自:https://dba.stackexchange.com/questions/57826