sp_helptext (Transact-SQL)
顯示使用者自訂規則定義、預設值、未加密的 Transact-SQL 預存程序、使用者自訂的 Transact-SQL 函數、觸發程序、計算資料行、CHECK 條件約束、檢視,或系統預存程序之類的系統物件。
適用於:SQL Server (SQL Server 2008 透過目前版本)、Windows Azure 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)