sp_helptext (Transact-SQL)
適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體
顯示使用者定義規則、預設、未加密的 Transact-SQL 預存程式、使用者定義 Transact-SQL 函數、觸發程式、計算資料行、CHECK 條件約束、檢視或系統物件的定義,例如系統預存程式。
語法
sp_helptext [ @objname = ] 'name' [ , [ @columnname = ] computed_column_name ]
引數
[ @objname = ] 'name'
這是使用者定義、架構範圍物件的限定或非限定名稱。 只有在指定限定的物件時,才需要引號。 如果提供完整名稱,包括資料庫名稱,資料庫名稱必須是目前資料庫的名稱。 物件必須位於目前的資料庫中。 name 為 Nvarchar(776) ,沒有預設值。
[ @columnname = ] 'computed_column_name'
這是要顯示定義資訊之計算資料行的名稱。 包含資料行的資料表必須指定為 名稱 。 column_name為 sysname ,沒有預設值。
傳回碼值
0 (成功) 或 1 (失敗)
結果集
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Text | nvarchar(255) | 物件定義 |
備註
sp_helptext會顯示用來在多個資料列中建立物件的定義。 每個資料列都包含 Transact-SQL 定義的 255 個字元。 定義位於 definition
sys.sql_modules 目錄檢視的資料 行中。
注意
Azure Synapse Analytics 中不支援系統預存程序 sp_helptext
。 請改用 OBJECT_DEFINITION
系統函式或 sys.sql_modules
物件目錄檢視來取得對等的結果。
權限
需要 public 角色的成員資格。 系統物件定義是公開顯示的。 凡具有 ALTER、CONTROL、TAKE OWNERSHIP 或 VIEW DEFINITION 任一權限的物件擁有者或被授與者,都看得到使用者物件的定義。
範例
A. 顯示觸發程式的定義
下列範例會顯示資料庫中觸發 dEmployee
AdventureWorks2022
程式的定義。
USE AdventureWorks2022;
GO
EXEC sp_helptext 'HumanResources.dEmployee';
GO
B. 顯示計算資料行的定義
下列範例會顯示資料庫中資料表 AdventureWorks2022
上 SalesOrderHeader
計算資料行 TotalDue
的定義。
USE AdventureWorks2022;
GO
sp_helptext @objname = N'AdventureWorks2022.Sales.SalesOrderHeader', @columnname = TotalDue ;
GO
以下為結果集。
Text
---------------------------------------------------------------------
(isnull(([SubTotal]+[TaxAmt])+[Freight],(0)))
另請參閱
Database Engine 預存程式 (Transact-SQL)
OBJECT_DEFINITION (Transact-SQL)
sp_help (Transact-SQL)
sys.sql_modules (Transact-SQL)
系統預存程序 (Transact-SQL)
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應