sp_help (Transact-SQL)
Возвращает сведения об объекте базы данных (любом объекте, присутствующем в представлении совместимости sys.sysobjects), обычном или определяемом пользователем типе данных.
Синтаксис
sp_help [ [ @objname = ] 'name' ]
Аргументы
- [ @objname=] 'name'
Имя любого объекта в sysobjects или любого пользовательского типа данных в таблице systypes. Аргумент name имеет тип nvarchar(776) и значение по умолчанию NULL. Имена баз данных неприемлемы.
Значения кодов возврата
0 (успешное завершение) или 1 (ошибка)
Результирующие наборы
Возвращаемые результирующие наборы зависят от того, указан ли аргумент name, когда он указан, и какой объект базы данных имеется в виду.
Если процедура sp_help выполняется без аргументов, возвращаются общие сведения об объектах всех типов, существующих в текущей базе данных.
Имя столбца
Тип данных
Описание
Название
nvarchar(128)
Имя объекта
Owner
nvarchar(128)
Владелец объекта
Object_type
nvarchar(31)
Тип объекта
Если аргумент 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 для несимвольных типов данных.
Если аргумент 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