Поделиться через


sp_help (Transact-SQL)

Возвращает сведения об объекте базы данных (любом объекте, присутствующем в представлении совместимости sys.sysobjects), обычном или определяемом пользователем типе данных.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

sp_help [ [ @objname = ] 'name' ]

Аргументы

  • [ @objname=] 'name'
    Имя любого объекта в sysobjects или любого пользовательского типа данных в таблице systypes. Аргумент name имеет тип nvarchar(776) и значение по умолчанию NULL. Имена баз данных неприемлемы.

Значения кодов возврата

0 (успешное завершение) или 1 (ошибка)

Результирующие наборы

Возвращаемые результирующие наборы зависят от того, указан ли аргумент name, когда он указан, и какой объект базы данных имеется в виду.

  1. Если процедура sp_help выполняется без аргументов, возвращаются общие сведения об объектах всех типов, существующих в текущей базе данных.

    Имя столбца

    Тип данных

    Описание

    Название

    nvarchar(128)

    Имя объекта

    Owner

    nvarchar(128)

    Владелец объекта

    Object_type

    nvarchar(31)

    Тип объекта

  2. Если аргумент name является типом данных SQL Server или пользовательским типом данных, то процедура sp_help возвращает этот результирующий набор.

    Имя столбца

    Тип данных

    Описание

    Type_name

    nvarchar(128)

    Имя типа данных.

    Storage_type

    nvarchar(128)

    Имя типа данных SQL Server.

    Length

    smallint

    Физическая длина типа данных (в байтах).

    Prec

    int

    Точность (общее количество знаков).

    Масштаб

    int

    Количество знаков справа от десятичной запятой.

    Да

    varchar(35)

    Указывает, допускаются ли значения NULL. Возможны значения Yes (да) или No (нет).

    Default_name

    nvarchar(128)

    Имя значения по умолчанию, привязанного к этому типу.

    NULL = Нет привязанного значения по умолчанию.

    Rule_name

    nvarchar(128)

    Имя правила, привязанного к этому типу.

    NULL = Нет привязанного правила по умолчанию.

    Параметры сортировки

    sysname

    Параметры сортировки для типа данных. Имеет значение NULL для несимвольных типов данных.

  3. Если аргумент name соответствует любому объекту базы данных, кроме типа данных, процедура sp_help возвращает этот результирующий набор, а также дополнительные результирующие наборы, в зависимости от указанного типа объектов.

    Имя столбца

    Тип данных

    Описание

    Название

    nvarchar(128)

    Имя таблицы

    Owner

    nvarchar(128)

    Владелец таблицы

    Тип

    nvarchar(31)

    Тип таблицы

    Created_datetime

    datetime

    Дата создания таблицы

    В зависимости от указанного объекта базы данных, процедура sp_help возвращает дополнительные результирующие наборы.

    Если аргумент name соответствует системной таблице, пользовательской таблице или представлению, процедура sp_help возвращает следующие результирующие наборы. Однако результирующий набор, описывающий место расположения файла данных внутри файловой группы, для представления не возвращается.

    • Дополнительный результирующий набор, возвращаемый для объектов столбца:

      Имя столбца

      Тип данных

      Описание

      Column_name

      nvarchar(128)

      Имя столбца.

      Тип

      nvarchar(128)

      Тип данных столбца.

      Computed

      varchar(35)

      Указывает, являются ли значения в столбце вычисляемыми: Yes или No.

      Length

      int

      Длина столбца в байтах.

      ПримечаниеПримечание
      Если для столбца задан тип больших значений (varchar(max), nvarchar(max), varbinary(max) или xml), то будет отображено значение -1.

      Prec

      char(5)

      Точность столбца.

      Масштаб

      char(5)

      Масштаб столбца.

      Да

      varchar(35)

      Указывает, допустимы ли для столбца значения NULL: Yes или No.

      TrimTrailingBlanks

      varchar(35)

      Указывает, усекать ли завершающие пробелы или нет. Возвращает значение Yes или No.

      FixedLenNullInSource

      varchar(35)

      Только для обратной совместимости.

      Параметры сортировки

      sysname

      Параметры сортировки столбца. Имеет значение NULL для несимвольных типов данных.

    • Дополнительный результирующий набор, возвращаемый для столбцов идентификаторов:

      Имя столбца

      Тип данных

      Описание

      Identity

      nvarchar(128)

      Имя столбца, чей тип данных объявлен удостоверением.

      Seed

      numeric

      Стартовое значение для столбца идентификаторов.

      Increment

      numeric

      Шаг прироста, который следует использовать для значений в этом столбце.

      Not For Replication

      int

      Свойство IDENTITY не обеспечивается принудительно, когда имя входа репликации, например sqlrepl вставляет данные в таблицу:

      1 = True;

      0 = False.

    • Дополнительный результирующий набор, возвращаемый для столбцов:

      Имя столбца

      Тип данных

      Описание

      RowGuidCol

      sysname

      Имя столбца глобального уникального идентификатора.

    • Дополнительный результирующий набор, возвращаемый для файловых групп:

      Имя столбца

      Тип данных

      Описание

      Data_located_on_filegroup

      nvarchar(128)

      Файловая группа, в которой расположены данные: главная, вторичная или группа журнала транзакций.

    • Дополнительный результирующий набор, возвращаемый для индексов:

      Имя столбца

      Тип данных

      Описание

      index_name

      sysname

      Имя индекса.

      Index_description

      varchar(210)

      Описание индекса.

      index_keys

      nvarchar(2078)

      Имена столбцов, на основе которых построен индекс.

    • Дополнительный результирующий набор, возвращаемый для ограничений:

      Имя столбца

      Тип данных

      Описание

      constraint_type

      nvarchar(146)

      Тип ограничения.

      constraint_name

      nvarchar(128)

      Имя ограничения.

      delete_action

      nvarchar(9)

      Указывает, является ли действие DELETE: No Action, CASCADE или N/A.

      Применимо только для ограничений FOREIGN KEY.

      update_action

      nvarchar(9)

      Указывает, является ли действие UPDATE: No Action, Cascade или N/A. SET_NULL и SET_DEFAULT отображаются как «Нет действия».

      Применимо только для ограничений FOREIGN KEY.

      status_enabled

      varchar(8)

      Указывает, включено ли ограничение: Enabled, Disabled или N/A. SET_NULL и SET_DEFAULT отображаются как «Нет действия».

      Применимо только для ограничений 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)

      Тип данных аргумента хранимой процедуры.

      Length

      smallint

      Максимальная физическая длина хранилища, в байтах.

      Prec

      int

      Точность или общее количество знаков.

      Масштаб

      int

      Количество цифр справа от десятичного знака.

      Param_order

      smallint

      Порядок аргумента.

Замечания

Процедура sp_help осуществляет поиск объекта только в текущей базе данных.

Если аргумент name не указан, процедура sp_help перечисляет имена объектов, владельцев и типы объектов для всех объектов в текущей базе данных. Процедура sp_helptrigger предоставляет информацию о триггерах.

Процедура sp_help предоставляет доступ только к упорядочиваемым столбцам индекса; поэтому она не предоставляет доступа к XML-индексам или пространственным индексам.

Разрешения

Необходимо членство в роли public. Пользователь должен иметь по меньшей мере одно разрешение для objname. Чтобы просмотреть ключи, значения по умолчанию или правила ограничения для столбца, необходимо обладать разрешением VIEW DEFINITION для этой таблицы.

Примеры

А. Возвращение сведений обо всех объектах

В нижеследующем примере приводится информация о каждом объекте в базе данных master.

USE master;
GO
EXEC sp_help;
GO

Б. Возвращение сведений об отдельном объекте

В нижеследующем примере отображаются сведения о столбце Person в таблице Person.

USE AdventureWorks2008R2;
GO
EXEC sp_help 'Person.Person';
GO