• 相关软件
    >系统存储过程 sp_help 创建者:webmaster 更新时间:2006-01-14 00:00

    报告有关数据库对象(sysobjects 表中列出的任何对象)、用户定义数据类型或 Microsoft? SQL Server? 所提供的数据类型的信息。


    语法

    sp_help [ [ @objname = ] name ]


    参数

    [@objname =] name


    sysobjects 中的任意对象的名称,或者是在 systypes 表中任何用户定义数据类型的名称。Name 的数据类型为 nvarchar(776),默认值为 NULL。不能使用数据库名称。


    返回代码值

    0(成功)或 1(失败)


    结果集

    返回的结果集取决于 name 是否已指定、何时指定以及它是何种数据库对象等因素。


    1. 如果执行不带参数的 sp_help,则返回当前数据库中现有的所有类型对象的摘要信息。

















      列名数据类型描述
      Namenvarchar(128)对象名
      Ownernvarchar(128)对象所有者
      Object_typenvarchar(31)对象类型


    2. 如果 name 是 SQL Server 数据类型或用户定义数据类型,则 sp_help 返回此结果集。









































      列名数据类型描述
      Type_namenvarchar(128)数据类型名称。
      Storage_typenvarchar(128)SQL Server 类型名称。
      Lengthsmallint数据类型的物理长度(以字节为单位)。
      Precint精度(总的数字位数)。
      Scaleint小数点右边的数字位数。
      Nullablevarchar(35)指明是否允许 NULL 值:是或否。
      Default_namenvarchar(128)绑定到该类型的默认值名称。如果没有绑定默认值,则为 NULL。
      Rule_namenvarchar(128)绑定到该类型的规则名称。如果没有绑定默认值,则为 NULL。
      Collationsysname数据类型的排序规则。如果是非字符数据类型,则为 NULL。


    3. 如果 name 是任意数据库对象(而不是数据类型),那么 sp_help 将返回此结果集,以及基于指定对象类型的其它结果集。





















      列名数据类型描述
      Namenvarchar(128)表名
      Ownernvarchar(128)表的所有者
      Typenvarchar(31)表的类型
      Created_datetimedatetime创建的日期表


      根据指定的数据库对象,sp_help 返回其它结果集。


      如果 name 是系统表、用户表或者视图,则 sp_help 返回这些结果集(例外,对于视图,不返回描述数据文件在文件组中所处位置的结果集)。



      1. 按列对象返回其它结果集:













































        列名数据类型描述
        Column_namenvarchar(128)列名。
        Typenvarchar(128)列数据类型。
        Computedvarchar(35)指出是否计算了在列中的值:(是或否)。
        Lengthint以字节为单位的列长度。
        Precchar(5)列精度。
        Scalechar(5)列数值范围。
        Nullablevarchar(35)指出在列中是否允许 NULL 值:是或否。
        TrimTrailingBlanksvarchar(35)剪裁尾随空格(是或否)。
        FixedLenNullInSourcevarchar(35)只是为了向后兼容。
        Collationsysname列的排序规则。如果是非字符数据类型,则为 NULL。


      2. 按标识列返回的其它结果集:





















        列名数据类型描述
        Identitynvarchar(128)其数据类型被声明为标识的列名。
        Seednumeric标识列的起始值。
        Incrementnumeric此列中的值所使用的增量。
        Not For Replicationint当重复登录(例如 sqlrepl)试图在表中插入数据时,无法强制使用 IDENTITY 属性:
        1 = True
        0 = False


      3. 按列返回的其它结果集:









        列名数据类型描述
        RowGuidColsysname全局唯一标识符列的名称。


      4. 按文件组返回的其它结果集:









        列名数据类型描述
        Data_located_on_filegroupnvarchar(128)数据所在的文件组(主要文件组、次要文件组或事务日志)。


      5. 按索引返回的其它结果集:

















        列名数据类型描述
        index_namesysname索引名。
        index_descriptionvarchar(210)索引的描述。
        index_keysnvarchar(2078)生成索引所在列的列名。


      6. 按约束返回的其它结果集

































        列名数据类型描述
        constrain_typenvarchar(146)约束的类型。
        constrain_namenvarchar(128)约束名。
        delete_actionnvarchar(9)指明 DELETE 操作是:无操作、层叠或暂缺。

        (仅适用于 FOREIGN KEY 约束。)

        update_actionnvarchar(9)指明 UPDATE 操作是:无操作、层叠或暂缺。

        (仅适用于 FOREIGN KEY 约束。)

        status_enabledvarchar(8)指明是否启用约束:启用、禁用或暂缺。(仅适用于 CHECK 和 FOREIGN KEY 约束。)
        Status_for_replicationvarchar(19)指明约束是否用于复制。(仅适用于 CHECK 和 FOREIGN KEY 约束。)
        constrain_keysnvarchar(2078)构成约束的列名。或者(对于默认值和规则而言)指定义默认值或规则的文本。


      7. 按引用对象返回的其它结果集:









        列名数据类型描述
        Table is referenced bynvarchar(516)识别引用表的其它数据库对象。


    4. 如果 name 是系统存储过程或扩展存储过程,那么 sp_help 将返回此结果集。





























      列名数据类型描述
      Parameter_namenvarchar(128)存储过程参数名。
      Typenvarchar(128)存储过程参数的数据类型。
      Lengthsmallint最大物理存储长度(以字节为单位)。
      Precint精度(总的数字位数)。
      Scaleint小数点右边的数字个数。
      Param_ordersmallint参数的顺序。


    注释

    sp_help 过程仅在当前数据库中查找对象。


    当没有指定 name 时,sp_helptrigger 列出当前数据库中所有对象的名称、所有者和对象类型。sp_helptrigger 提供有关触发器的信息。


    权限

    执行权限默认授予 public 角色。


    示例

    A. 返回有关所有对象的信息

    下面的示例列出有关 sysobjects 中每个对象的信息。

    USE master
    EXEC sp_help

    B. 返回有关单个对象的信息

    下面的示例显示有关 publishers 表的信息。

    USE pubs
    EXEC sp_help publishers
    相关文章
    本页查看次数: