系統預存程序 (Transact-SQL)

適用于:SQL Server 2016 (13.x) 和更新版本 Azure SQL DatabaseAzure SQL 受控執行個體

在SQL Server中,許多系統管理和資訊活動都可以使用系統預存程式來執行。 系統預存程序是以下表所示的類別目錄加以分組。

本節內容

類別 描述
作用中Geo-Replication預存程式 用來管理 Azure SQL 資料庫中的作用中Geo-Replication組態
目錄預存程序 用來實作 ODBC 資料字典功能,以及隔離 ODBC 應用程式,不讓基礎系統資料表受到變更。
異動資料擷取預存程序 用來啟用、停用或報告異動資料擷取物件。
資料指標預存程序 用來實作游標變數功能。
資料收集器預存程序 可搭配資料收集器和下列元件一起使用:收集組、收集項和收集類型。
Database Engine 預存程序 用於SQL Server Database Engine 的一般維護。
Database Mail 預存程序 (Transact-SQL) 用來從 SQL Server 實例內執行電子郵件作業。
資料庫維護計畫預存程序 用來設定管理資料庫效能所需的核心維護工作。
分散式查詢預存程序 用來實作和管理分散式查詢。
Filestream 和 FileTable 預存程序 (Transact-SQL) 用來設定與管理 FILESTREAM 和 FileTable 功能。
資料庫) (Azure SQL防火牆規則預存程式 用來設定Azure SQL資料庫防火牆。
全文檢索搜尋預存程序 用來實作和查詢全文檢索索引。
一般擴充預存程序 用來為各種維護活動提供從 SQL Server 實例到外部程式的介面。
記錄傳送預存程序 用來設定、修改和監視記錄傳送組態。
管理資料倉儲預存程序 (Transact-SQL) 用來設定管理資料倉儲。
MSDTC 預存程式 用於重設 Microsoft Distributed Transaction Coordinator (MSDTC) 記錄檔,或查看 MSDTC 統計資料。
OLE Automation 預存程式 用來啟用標準 Automation 物件,以在標準 Transact-SQL 批次中使用。
以原則為基礎的管理預存程序 用於以原則為基礎的管理。
PolyBase 預存程序 從 PolyBase 向外延展群組新增或移除電腦。
查詢存放區預存程式 (Transact-SQL) 用來微調效能。
複寫預存程式 用來管理複寫。
安全性預存程序 用來管理安全性。
快照集備份預存程式 用來刪除FILE_SNAPSHOT備份及其所有快照集,或刪除個別的備份檔案快照集。
空間索引預存程序 用來分析和改善空間索引的索引效能。
SQL Server Agent 預存程序 由SQL Server Profiler用來監視效能和活動。
SQL Server Profiler 預存程序 由SQL Server Agent用來管理排程和事件驅動活動。
Stretch Database 預存程式 用來管理延展資料庫。
時態表預存程式 用於時態表
XML 預存程序 用於 XML 文字管理。

注意

除非特別說明,否則所有系統預存程序都會傳回 0 值,以表示成功。 若要表示失敗,則傳回非零值。

重要

stretch Database 在 2022 SQL Server 2022 (16.x) 中已被取代。 未來的 Microsoft SQL Server 版本將移除這項功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。

API 系統預存程序

針對 ADO、OLE DB 和 ODBC 應用程式執行SQL Server Profiler的使用者可能會注意到這些應用程式使用 Transact-SQL 參考中未涵蓋的系統預存程式。 Microsoft SQL Server Native Client OLE DB 提供者和 SQL Server Native Client ODBC 驅動程式會使用這些預存程式來實作資料庫 API 的功能。 這些預存程式只是提供者或驅動程式用來將使用者要求傳達給SQL Server實例的機制。 它們只做為提供者或驅動程式內部使用。 不支援從以SQL Server為基礎的應用程式明確呼叫它們。

sp_createorphan和sp_droporphans預存程式會用於 ODBC Ntexttextimage processing。

SQL Server會使用sp_reset_connection預存程式來支援交易中的遠端預存程序呼叫。 當重複使用連接集區中的連接時,這個預存程序也會引發 Audit Login 和 Audit Logout 事件。

下表中的系統預存程式只用于SQL Server或透過用戶端 API 的實例內,不適用於一般客戶用途。 它們隨時可以變更,而且不保證其相容性。

下列預存程式記載于《線上叢書》SQL Server:

sp_catalogs

sp_column_privileges

sp_column_privileges_ex

sp_columns

sp_columns_ex

sp_databases

sp_cursor

sp_cursorclose

sp_cursorexecute

sp_cursorfetch

sp_cursoroption

sp_cursoropen

sp_cursorprepare

sp_cursorprepexec

sp_cursorunprepare

sp_execute

sp_datatype_info

sp_fkeys

sp_foreignkeys

sp_indexes

sp_pkeys

sp_primarykeys

sp_prepare

sp_prepexec

sp_prepexecrpc

sp_unprepare

sp_server_info

sp_special_columns

sp_sproc_columns

sp_statistics

sp_table_privileges

sp_table_privileges_ex

sp_tables

sp_tables_ex

 

沒有記載下列預存程序:

sp_assemblies_rowset

sp_assemblies_rowset_rmt

sp_assemblies_rowset2

sp_assembly_dependencies_rowset

sp_assembly_dependencies_rowset_rmt

sp_assembly_dependencies_rowset2

sp_bcp_dbcmptlevel

sp_catalogs_rowset

sp_catalogs_rowset;2

sp_catalogs_rowset;5

sp_catalogs_rowset_rmt

sp_catalogs_rowset2

sp_check_constbytable_rowset

sp_check_constbytable_rowset;2

sp_check_constbytable_rowset2

sp_check_constraints_rowset

sp_check_constraints_rowset;2

sp_check_constraints_rowset2

sp_column_privileges_rowset

sp_column_privileges_rowset;2

sp_column_privileges_rowset;5

sp_column_privileges_rowset_rmt

sp_column_privileges_rowset2

sp_columns_90

sp_columns_90_rowset

sp_columns_90_rowset_rmt

sp_columns_90_rowset2

sp_columns_ex_90

sp_columns_rowset

sp_columns_rowset;2

sp_columns_rowset;5

sp_columns_rowset_rmt

sp_columns_rowset2

sp_constr_col_usage_rowset

sp_datatype_info_90

sp_ddopen;1

sp_ddopen;10

sp_ddopen;11

sp_ddopen;12

sp_ddopen;13

sp_ddopen;2

sp_ddopen;3

sp_ddopen;4

sp_ddopen;5

sp_ddopen;6

sp_ddopen;7

sp_ddopen;8

sp_ddopen;9

sp_foreign_keys_rowset

sp_foreign_keys_rowset;2

sp_foreign_keys_rowset;3

sp_foreign_keys_rowset;5

sp_foreign_keys_rowset_rmt

sp_foreign_keys_rowset2

sp_foreign_keys_rowset3

sp_indexes_90_rowset

sp_indexes_90_rowset_rmt

sp_indexes_90_rowset2

sp_indexes_rowset

sp_indexes_rowset;2

sp_indexes_rowset;5

sp_indexes_rowset_rmt

sp_indexes_rowset2

sp_linkedservers_rowset

sp_linkedservers_rowset;2

sp_linkedservers_rowset2

sp_oledb_database

sp_oledb_defdb

sp_oledb_deflang

sp_oledb_language

sp_oledb_ro_usrname

sp_primary_keys_rowset

sp_primary_keys_rowset;2

sp_primary_keys_rowset;3

sp_primary_keys_rowset;5

sp_primary_keys_rowset_rmt

sp_primary_keys_rowset2

sp_procedure_params_90_rowset

sp_procedure_params_90_rowset2

sp_procedure_params_rowset

sp_procedure_params_rowset;2

sp_procedure_params_rowset2

sp_procedures_rowset

sp_procedures_rowset;2

sp_procedures_rowset2

sp_provider_types_90_rowset

sp_provider_types_rowset

sp_schemata_rowset

sp_schemata_rowset;3

sp_special_columns_90

sp_sproc_columns_90

sp_statistics_rowset

sp_statistics_rowset;2

sp_statistics_rowset2

sp_stored_procedures

sp_table_constraints_rowset

sp_table_constraints_rowset;2

sp_table_constraints_rowset2

sp_table_privileges_rowset

sp_table_privileges_rowset;2

sp_table_privileges_rowset;5

sp_table_privileges_rowset_rmt

sp_table_privileges_rowset2

sp_table_statistics_rowset

sp_table_statistics_rowset;2

sp_table_statistics2_rowset

sp_tablecollations

sp_tablecollations_90

sp_tables_info_90_rowset

sp_tables_info_90_rowset_64

sp_tables_info_90_rowset2

sp_tables_info_90_rowset2_64

sp_tables_info_rowset

sp_tables_info_rowset;2

sp_tables_info_rowset_64

sp_tables_info_rowset_64;2

sp_tables_info_rowset2

sp_tables_info_rowset2_64

sp_tables_rowset;2

sp_tables_rowset;5

sp_tables_rowset_rmt

sp_tables_rowset2

sp_usertypes_rowset

sp_usertypes_rowset_rmt

sp_usertypes_rowset2

sp_views_rowset

sp_views_rowset2

sp_xml_schema_rowset

sp_xml_schema_rowset2

另請參閱

CREATE PROCEDURE (Transact-SQL)
預存程序 (Database Engine)
執行預存程序 (OLE DB)
執行預存程序
Database Engine 預存程序 (Transact-SQL)
執行預存程序