共用方式為


sp_helptext (Transact-SQL)

顯示使用者自訂規則定義、預設值、未加密的 Transact-SQL 預存程序、使用者自訂的 Transact-SQL 函數、觸發程序、計算資料行、CHECK 條件約束、檢視,或系統預存程序之類的系統物件。

主題連結圖示 Transact-SQL 語法慣例

語法

sp_helptext [ @objname = ] 'name' [ , [ @columnname = ] computed_column_name ]

引數

  • [ @objname = ] 'name'
    這是使用者自訂、結構描述範圍物件的限定或非限定名稱。 只有在指定限定物件時,才會用到引號。 如果提供其中包括資料庫名稱的完整名稱,資料庫名稱就必須是目前資料庫的名稱。 這個物件必須在目前的資料庫中。 name 是 nvarchar(776),沒有預設值。

  • [ @columnname = ] 'computed_column_name'
    這是要顯示定義資訊的計算資料行名稱。 包含該資料行的資料表必須指定為 name。 column_name 是 sysname,沒有預設值。

傳回碼值

0 (成功) 或 1 (失敗)

結果集

資料行名稱

資料類型

說明

文字

nvarchar(255)

物件定義

備註

sp_helptext 會顯示用來在多個資料列中建立物件的定義。 每一個資料列都包含 255 個字元的 Transact-SQL 定義。 這個定義位在 sys.sql_modules 目錄檢視的 definition 資料行中。

權限

需要 public 角色中的成員資格。 系統物件定義是公開顯示的。 凡具有 ALTER、CONTROL、TAKE OWNERSHIP 或 VIEW DEFINITION 任一權限的物件擁有者或被授與者,都看得到使用者物件的定義。

範例

A.顯示觸發程序的定義

下列範例會顯示 AdventureWorks2012 資料庫中 dEmployee 觸發程序的定義。

USE AdventureWorks2012;
GO
EXEC sp_helptext 'HumanResources.dEmployee';
GO

B.顯示計算資料行的定義

下列範例會顯示 AdventureWorks2012 資料庫中的 SalesOrderHeader 資料表的計算資料行 TotalDue 的定義。

USE AdventureWorks2012;
GO
sp_helptext @objname = N'AdventureWorks2012.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)