sp_help (Transact-SQL)
适用于:SQL ServerAzure SQL 数据库Azure 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) 对象名称 所有者 nvarchar (128) 对象所有者 (这是拥有对象的数据库主体。默认为包含 object 的架构的所有者。) Object_type nvarchar (31) 对象类型 如果 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) 剪裁尾随空格。 返回 Yes 或 No。 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) 构成约束的列的名称。对于默认值和规则而言,则为定义默认值或规则的文本。 针对执行引用的对象返回的其他结果集:
列名称 数据类型 说明 Table is referenced by nvarchar (516) 标识引用表的其他数据库对象。 针对存储过程、函数或扩展存储过程返回的其他结果集:
列名称 数据类型 说明 Parameter_name nvarchar (128) 存储过程参数名。 类型 nvarchar (128) 存储过程参数的数据类型。 长度 smallint 最大物理存储长度(以字节为单位)。 Prec int 精度,即数字总位数。 缩放 int 小数点右边的数字位数。 Param_order smallint 参数的顺序。
备注
sp_help过程仅在当前数据库中查找对象。
如果未指定 名称 , sp_help 列出当前数据库中所有对象的对象名称、所有者和对象类型。 sp_helptrigger 提供有关触发器的信息。
sp_help 仅公开可排序索引列;因此,它不公开有关 XML 索引或空间索引的信息。
权限
要求 公共 角色具有成员身份。 用户必须至少对 objname 拥有一个权限。 若要查看列约束键、默认值或规则,必须对表具有 VIEW DEFINITION 权限。
示例
A. 返回有关所有对象的信息
以下示例将列出有关 master
数据库中每个对象的信息。
USE master;
GO
EXEC sp_help;
GO
B. 返回有关单个对象的信息
以下示例将显示有关 Person
表的信息。
USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO
另请参阅
数据库引擎存储过程 (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 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈