系統資料庫
SQL Server 中包括下列系統資料庫。
系統資料庫 |
描述 |
---|---|
記錄 SQL Server 執行個體的所有系統層級資訊。 |
|
由 SQL Server Agent 用於排程警示和作業。 |
|
用來當作 SQL Server 執行個體上建立之所有資料庫的範本。對 model 資料庫進行的修改 (例如,資料庫大小、定序、復原模式和其他資料庫選項) 會套用到之後建立的任何資料庫。 |
|
是一個唯讀的資料庫,其中包含 SQL Server 擁有的系統物件。系統物件實際上會保存在 Resource 資料庫中,但邏輯上會出現在每個資料庫的 sys 結構描述中。 |
|
是保存暫存物件或中繼結果集的工作空間。 |
修改系統資料
SQL Server 不支援使用者直接更新系統物件中的資訊,例如系統資料表、系統預存程序和目錄檢視。SQL Server 另外提供了一組完整的管理工具,讓使用者可以完全管理他們的系統,並管理資料庫中所有的使用者與物件。這些功能包括下列項目:
管理公用程式,例如 SQL Server Management Studio。
SQL-SMO API。可讓程式設計人員加入完整的功能,以在應用程式中管理 SQL Server。
Transact-SQL 指令碼和預存程序。上述項目可以使用系統預存程序和 Transact-SQL DDL 陳述式。
這些工具可避免應用程式在系統物件中被變更。例如,SQL Server 有時需要在新版的 SQL Server 中變更系統資料表,以支援加入該版本的新功能。提出直接參考系統資料表的 SELECT 陳述式之應用程式,它們通常依賴系統資料表的舊有格式。站台可能必須先改寫從系統資料表中選取的應用程式,才能升級至新版的 SQL Server。SQL Server 將考量系統預存程序、DDL 與 SQL-SMO 已發行的介面,然後嘗試維護這些介面的回溯相容性。
SQL Server 並不支援在系統資料表上定義的觸發程序,因為這些觸發程序可能會修改系統的作業。
檢視系統資料庫資料
您不應撰寫直接查詢系統資料表的 Transact-SQL 陳述式,除非這是取得應用程式所需資訊的唯一方式。相反地,應用程式應使用下列方法取得目錄和系統資訊:
系統目錄檢視
SQL-SMO
Windows Management Instrumentation (WMI) 介面
用於應用程式的資料 API 之目錄函數、方法、屬性 (Attribute) 或屬性 (Property),例如 ADO、OLE DB 或 ODBC。
Transact-SQL 系統預存程序和內建函數。
請參閱