Sql-Server
SQL Server 2012 中缺少系統表
我將 SQL Server 2000 數據庫恢復到 2005,然後恢復到 2012。我現在無法看到 SQL Server 2000 中存在的系統表。
為什麼?
您應該使用目錄視圖而不是舊的系統表(例如,
sys.objects
代替sys.sysobjects
,sys.columns
代替sys.syscolumns
)。系統表仍然存在,但它們的存在只是為了向後兼容。其中一些已被移至隱藏的系統數據庫,mssqlsystemresource
和/或僅在與專用管理員連接連接時可見。當然,您需要某些權限才能查看新的目錄視圖。請閱讀舊文件中的註釋,例如
sys.syscolumns
:包含此 SQL Server 2000 系統表作為向後兼容的視圖。我們建議您改用目前的 SQL Server 系統視圖。要查找等效的系統視圖,請參閱將 SQL Server 2000 系統表映射到 SQL Server 2005 系統視圖。此功能將在 Microsoft SQL Server 的未來版本中刪除。避免在新的開發工作中使用此功能,併計劃修改目前使用此功能的應用程序。
這是他們提到的映射文件的連結,但不要連結。這應該向您展示如何開始從,比如說,過渡
syscolumns
到sys.columns
.停止使用舊系統表。學習新的元數據;它就在這裡。