SQL Server 2000 時代,查詢索引列排序需連接 sysindexes、sysindexkeys、syscolumns 等系統表,還要用 INDEXKEY_PROPERTY 等非文檔化函數,極其痛苦。SQL Server 2005 徹底重寫了元數據架構:
sysobjects → sys.sysobjects),保證向下兼容sys.all_*(含系統/用戶對象)、sys.*(僅用戶對象)is_ms_shipped = 1 識別系統對象sys.tables、sys.indexes、sys.index_columns、sys.parameters 等SELECT * FROM sys.index_columns WHERE object_id = OBJECT_ID('t'),is_descending_key 列直接給出dm_*:dm_exec_sessions、dm_exec_requests、dm_db_index_usage_stats、dm_os_wait_stats 等DBCC、sp_who、sp_lock 等舊命令sys schema,受擴展的 Schema 安全模型保護SELECT name FROM sys.all_views WHERE is_ms_shipped = 1 可獲完整視圖清單新元數據體系將「逆向工程系統表」變為「查閱文檔化視圖」,是 DBA 開發效率的質飛躍。