事件
3月31日 下午11時 - 4月2日 下午11時
最大的 SQL、網狀架構和 Power BI 學習事件。 3 月 31 日 - 4 月 2 日。 使用程式代碼 FABINSIDER 來節省 $400 美元。
立即註冊適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
報告資料庫對象的相關信息(相容性檢視中 sys.sysobjects
所列的任何物件)、使用者定義數據類型或數據類型。
sp_help [ [ @objname = ] N'objname' ]
[ ; ]
數據表中 sys.sysobjects
任何物件的名稱,或數據表中的任何 sys.systypes
使用者定義數據類型。 @objname為 nvarchar(776),預設值為 NULL
。 無法接受資料庫名稱。 可以分隔兩或三個部分名稱,例如 Person.AddressType
或 [Person].[AddressType]
。
0
(成功) 或 1
(失敗)。
傳回的結果集取決於是否 指定@name 、指定時,以及指定的資料庫物件。
如果沒有 sp_help
自變數執行,則會傳回目前資料庫中所有類型物件的摘要資訊。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Name |
nvarchar(128) | 物件名稱 |
Owner |
nvarchar(128) | 對象擁有者 (擁有物件的資料庫主體。預設為包含 對象的架構擁有者。 |
Object_type |
nvarchar(31) | Object type |
如果 @name 是 SQL Server 數據類型或使用者定義數據類型, sp_help
則傳回此結果集。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Type_name |
nvarchar(128) | 數據類型名稱。 |
Storage_type |
nvarchar(128) | SQL Server 類型名稱。 |
Length |
smallint | 數據類型的實體長度(以位元組為單位)。 |
Prec |
int | 有效位數(位數總數)。 |
Scale |
int | 小數點右邊的數位數。 |
Nullable |
varchar(35) | 指出是否 NULL 允許值: Yes 或 No 。 |
Default_name |
nvarchar(128) | 系結至此類型之預設的名稱。NULL = 未系結預設值。 |
Rule_name |
nvarchar(128) | 系結至此類型之規則的名稱。NULL = 未系結預設值。 |
Collation |
sysname | 數據類型的定序。 NULL 針對非字元數據類型。 |
如果 @name 是數據類型以外的任何資料庫物件, sp_help
則根據指定的物件類型,傳回此結果集和其他結果集。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Name |
nvarchar(128) | 資料表名稱 |
Owner |
nvarchar(128) | 數據表擁有者 |
Type |
nvarchar(31) | 資料表類型 |
Created_datetime |
datetime | 建立日期數據表 |
根據指定的資料庫對象, sp_help
傳回其他結果集。
如果 @name 是系統數據表、用戶數據表或檢視表, sp_help
則會傳回下列結果集。 不過,描述數據檔位於檔案群組上的位置的結果集不會針對檢視傳回。
下列結果集也會在資料行物件上傳回:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Column_name |
nvarchar(128) | 資料行名稱。 |
Type |
nvarchar(128) | 數據行數據類型。 |
Computed |
varchar(35) | 顯示資料列中的值是否計算: Yes 或 No 。 |
Length |
int | 以位元組為單位的數據行長度。 注意:如果數據行數據類型是大型實值型別 (varchar(max)、nvarchar(max)、varbinary(max)或 xml),則值會顯示為 -1 。 |
Prec |
char(5) | 數據行有效位數。 |
Scale |
char(5) | 數據行小數字數。 |
Nullable |
varchar(35) | 指出資料列中是否 NULL 允許值: Yes 或 No 。 |
TrimTrailingBlanks |
varchar(35) | 修剪尾端空白。 傳回 Yes 或 No 。 |
FixedLenNullInSource |
varchar(35) | 此參數已被取代,而且會維護腳本的回溯相容性。 |
Collation |
sysname | 數據行的定序。 NULL 針對非字元數據類型。 |
識別資料列也會傳回下列結果集:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Identity |
nvarchar(128) | 數據類型宣告為身分識別的數據行名稱。 |
Seed |
numeric | 識別數據行的起始值。 |
Increment |
numeric | 遞增以用於此數據行中的值。 |
Not For Replication |
int | IDENTITY 當復寫登入,例如 sqlrepl,將數據插入數據表時,不會強制執行 屬性:1 = True0 = False |
下列結果集也會在數據行上傳回:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
RowGuidCol |
sysname | 全域唯一標識碼數據行的名稱。 |
檔案群組也會傳回下列結果集:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Data_located_on_filegroup |
nvarchar(128) | 資料所在的檔案群組: Primary 、 Secondary 或 Transaction Log 。 |
索引上也會傳回下列結果集:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
index_name |
sysname | 索引名稱。 |
Index_description |
varchar(210) | 索引的描述。 |
index_keys |
nvarchar(2078) | 建立索引的數據行名稱。 傳 NULL 回記憶體優化數據行存放區索引。 |
下列結果集也會在條件約束上傳回:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
constraint_type |
nvarchar(146) | 條件約束的類型。 |
constraint_name |
nvarchar(128) | 條件約束的名稱。 |
delete_action |
nvarchar(9) | 指出動作是否DELETE 為、、CASCADE 、 SET_NULL SET_DEFAULT 或 N/A 的NO_ACTION 其中一個。僅適用於FOREIGNKEY條件約束。 |
update_action |
nvarchar(9) | 指出動作是否UPDATE 為、、CASCADE 、 SET_NULL SET_DEFAULT 或 N/A 的NO_ACTION 其中一個。僅適用於 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) | 組成條件約束的數據行名稱,或者,如果是預設值和規則,則為定義預設或規則的文字。 |
參考物件上也會傳回下列結果集:
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Table is referenced by |
nvarchar(516) | 識別參考數據表的其他資料庫物件。 |
預存程式、函式或擴充預存程式也會傳回下列結果集。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
Parameter_name |
nvarchar(128) | 預存程序參數名稱。 |
Type |
nvarchar(128) | 預存程序參數的數據類型。 |
Length |
smallint | 實體記憶體長度上限,以位元組為單位。 |
Prec |
int | 有效位數或數字總數。 |
Scale |
int | 小數點右邊的數位數。 |
Param_order |
smallint | 參數的順序。 |
此 sp_help
程式只會尋找目前資料庫中的物件。
未指定@name時,sp_help
會列出目前資料庫中所有物件的物件名稱、擁有者和物件類型。 sp_helptrigger
提供觸發程式的相關信息。
sp_help
只公開可排序的索引數據行;因此,它不會公開 XML 索引或空間索引的相關信息。
需要 public 角色的成員資格。 用戶必須至少有一個許可權才能@objname。 若要檢視數據行條件約束索引鍵、預設值或規則,您必須具有 VIEW DEFINITION
數據表的許可權。
本文 Transact-SQL 程式碼範例使用 AdventureWorks2022
或 AdventureWorksDW2022
範例資料庫,從 Microsoft SQL Server Samples 和 Community Projects (Microsoft SQL Server 範例和社群專案)首頁即可下載。
下列範例會列出資料庫中每個對象 master
的相關信息。
USE master;
GO
EXEC sp_help;
GO
下列範例會顯示數據表的相關信息 Person.Person
。
USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO
事件
3月31日 下午11時 - 4月2日 下午11時
最大的 SQL、網狀架構和 Power BI 學習事件。 3 月 31 日 - 4 月 2 日。 使用程式代碼 FABINSIDER 來節省 $400 美元。
立即註冊