sp_help (Transact-SQL)
適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體
報告資料庫物件的相關資訊(sys.sysobjects 相容性檢視中 所列的任何物件)、使用者定義資料類型或資料類型。
語法
sp_help [ [ @objname = ] 'name' ]
引數
[ @objname = ] 'name'
這是 sysobjects 或 systypes 資料表中 任何使用者定義資料類型的任何物件 名稱。 name 為 Nvarchar( 776 ), 預設值為 Null。 無法接受資料庫名稱。 可以分隔兩或三個部分名稱,例如 'Person.AddressType' 或 '[Person]。[AddressType]'。
傳回碼值
0 (成功) 或 1 (失敗)
結果集
傳回的結果集取決於是否 指定名稱 、指定時,以及它所在的資料庫物件。
如果沒有 引數執行sp_help ,則會傳回目前資料庫中所有類型物件的摘要資訊。
資料行名稱 資料類型 描述 名稱 Nvarchar( 128 ) Object name 負責人 Nvarchar( 128 ) 物件擁有者 (這是擁有 物件的資料庫主體。預設為包含 物件的架構擁有者。 Object_type Nvarchar( 31 ) Object type 如果 name 是 SQL Server 資料類型或使用者定義資料類型, sp_help 會傳回此結果集。
資料行名稱 資料類型 描述 Type_name Nvarchar( 128 ) 資料類型名稱。 Storage_type Nvarchar( 128 ) SQL Server 類型名稱。 長度 smallint 資料類型的實體長度(以位元組為單位)。 Prec int 有效位數(位數總數)。 縮放規模 int 小數點右邊的數位數。 可為 Null Varchar( 35 ) 指出是否允許 Null 值:是或否。 Default_name Nvarchar( 128 ) 系結至此類型之預設的名稱。
Null = 沒有系結預設值。Rule_name Nvarchar( 128 ) 系結至此類型之規則的名稱。
Null = 沒有系結預設值。定序 sysname 資料類型的定序。 非字元資料類型的 Null。 如果 name 是資料類型以外的任何資料庫物件, sp_help 會根據指定的物件類型傳回此結果集和其他結果集。
資料行名稱 資料類型 描述 名稱 Nvarchar( 128 ) 資料表名稱 負責人 Nvarchar( 128 ) 資料表擁有者 類型 Nvarchar( 31 ) 資料表類型 Created_datetime datetime 建立日期資料表 視指定的資料庫物件而定, sp_help 會傳回其他結果集。
如果 name 是系統資料表、使用者資料表或檢視表, sp_help 會傳回下列結果集。 不過,描述資料檔案位於檔案群組上的位置的結果集不會針對檢視傳回。
在資料行物件上傳回的其他結果集:
資料行名稱 資料類型 描述 Column_name Nvarchar( 128 ) 資料行名稱。 類型 Nvarchar( 128 ) 資料行資料類型。 計算 Varchar( 35 ) 指出資料行中的值是否計算:是或否。 長度 int 以位元組為單位的資料行長度。
注意:如果資料行資料類型是大型實數值型別 ( Varchar(max)、 Nvarchar(max) 、 Varbinary(max) 或 xml ),則值會顯示為 -1。Prec char( 5 ) 資料行有效位數。 縮放規模 char( 5 ) 資料行小數位數。 可為 Null Varchar( 35 ) 指出資料行中是否允許 Null 值:是或否。 TrimTrailingBlanks Varchar( 35 ) 修剪尾端空白。 會傳回 [是] 或 [否]。 FixedLenNullInSource Varchar( 35 ) 只是為了與舊版相容。 定序 sysname 資料行的定序。 非字元資料類型的 Null。 在識別資料行上傳回的其他結果集:
資料行名稱 資料類型 描述 身分識別 Nvarchar( 128 ) 資料類型宣告為身分識別的資料行名稱。 種子 numeric 識別資料行的起始值。 [遞增] numeric 遞增以用於此資料行中的值。 不可複寫 int 當複寫登入,例如 sqlrepl ,會將資料插入資料表時,不會強制執行 IDENTITY 屬性:
1 = True
0 = False在資料行上傳回的其他結果集:
資料行名稱 資料類型 描述 RowGuidCol sysname 全域唯一識別碼資料行的名稱。 在檔案群組上傳回的其他結果集:
資料行名稱 資料類型 描述 Data_located_on_filegroup Nvarchar( 128 ) 資料所在的檔案群組:主要、次要或交易記錄。 在索引上傳回的其他結果集:
資料行名稱 資料類型 描述 index_name sysname 索引名稱。 Index_description Varchar( 210 ) 索引的描述。 index_keys Nvarchar( 2078 ) 建立索引的資料行名稱。 傳回 xVelocity 記憶體優化資料行存放區索引的 Null。 在條件約束上傳回的其他結果集:
資料行名稱 資料類型 描述 constraint_type Nvarchar( 146 ) 條件約束的類型。 constraint_name Nvarchar( 128 ) 條件約束的名稱。 delete_action Nvarchar( 9 ) 指出 DELETE 動作是否為:NO_ACTION、CASCADE、SET_Null、SET_DEFAULT 或 N/A。
僅適用于 FOREIGN KEY 條件約束。update_action Nvarchar( 9 ) 指出 UPDATE 動作是否為:NO_ACTION、CASCADE、SET_Null、SET_DEFAULT 或 N/A。
僅適用于 FOREIGN KEY 條件約束。status_enabled Varchar( 8 ) 指出是否啟用條件約束:Enabled、Disabled 或 N/A。
僅適用于 CHECK 和 FOREIGN KEY 條件約束。status_for_replication Varchar( 19 ) 指出條件約束是否用於複寫。
僅適用于 CHECK 和 FOREIGN KEY 條件約束。constraint_keys Nvarchar( 2078 ) 組成條件約束的資料行名稱,或者,如果是預設值和規則,則為定義預設或規則的文字。 參考物件時傳回的其他結果集:
資料行名稱 資料類型 描述 資料表參考者 Nvarchar( 516 ) 識別參考資料表的其他資料庫物件。 預存程式、函式或擴充預存程式傳回的其他結果集。
資料行名稱 資料類型 描述 Parameter_name Nvarchar( 128 ) 預存程式參數名稱。 類型 Nvarchar( 128 ) 預存程式參數的資料類型。 長度 smallint 實體儲存體長度上限,以位元組為單位。 Prec int 有效位數或數位總數。 縮放規模 int 小數點右邊的數位數。 Param_order smallint 參數的順序。
備註
sp_help 程式只會尋找目前資料庫中的物件。
未指定 name 時 , sp_help 列出目前資料庫中所有物件的物件名稱、擁有者和物件類型。 sp_helptrigger 提供觸發程式的相關資訊。
sp_help只公開可排序的索引資料行;因此,它不會公開 XML 索引或空間索引的相關資訊。
權限
需要 public 角色的成員資格。 使用者必須至少有一個 objname 許可權 。 若要檢視資料行條件約束索引鍵、預設值或規則,您必須具有資料表的 VIEW DEFINITION 許可權。
範例
A. 傳回所有物件的相關資訊
下列範例會列出資料庫中每個物件 master
的相關資訊。
USE master;
GO
EXEC sp_help;
GO
B. 傳回單一物件的相關資訊
下列範例會顯示資料表的相關資訊 Person
。
USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO
另請參閱
Database Engine 預存程式 (Transact-SQL)
sp_helpindex (Transact-SQL)
sp_helprotect (Transact-SQL)
sp_helpserver (Transact-SQL)
sp_helptrigger (Transact-SQL)
sp_helpuser (Transact-SQL)
系統預存程序 (Transact-SQL)
sys.sysobjects (Transact-SQL)
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應