sp_help (Transact-SQL)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure
Сообщает сведения об объекте базы данных (любом объекте, указанном в представлении совместимости), определяемом пользователем типе sys.sysobjects
данных или типе данных.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_help [ [ @objname = ] N'objname' ]
[ ; ]
Аргументы
[ @objname = ] N'objname'
Имя любого объекта или sys.sysobjects
любого определяемого пользователем типа данных в sys.systypes
таблице. @objname — nvarchar(776) с значением по умолчаниюNULL
. Имена баз данных недопустимы. Два или три имена частей могут быть разделены, например Person.AddressType
или [Person].[AddressType]
.
Значения кода возврата
0
(успешно) или 1
(сбой).
Результирующий набор
Результирующие наборы, возвращаемые, зависят от того, указан ли @name , когда он указан, и какой объект базы данных он есть.
Если
sp_help
выполняется без аргументов, возвращается сводная информация об объектах всех типов, существующих в текущей базе данных.Имя столбца Тип данных Description Name
nvarchar(128) Наименование объекта Owner
nvarchar(128) Владелец объекта (субъект базы данных, принадлежащий объекту. По умолчанию владелец схемы, содержащей объект.) Object_type
nvarchar(31) Тип объекта Если @name — это тип данных SQL Server или определяемый пользователем тип данных,
sp_help
возвращается этот результирующий набор.Имя столбца Тип данных Description 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
а также дополнительные результирующие наборы на основе указанного типа объекта.Имя столбца Тип данных Description Name
nvarchar(128) Имя таблицы Owner
nvarchar(128) Владелец таблицы Type
nvarchar(31) Тип таблицы Created_datetime
datetime Дата создания таблицы В зависимости от указанного
sp_help
объекта базы данных возвращает дополнительные результирующие наборы.Если @name является системной таблицей, пользовательской таблицей или представлением,
sp_help
возвращает следующие результирующие наборы. Однако результирующий набор, описывающий расположение файла данных в группе файлов, не возвращается для представления.Следующий результирующий набор также возвращается для объектов столбцов:
Имя столбца Тип данных Description 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
для типов данных noncharacter.Следующий результирующий набор также возвращается в столбцах удостоверений:
Имя столбца Тип данных Description Identity
nvarchar(128) Имя столбца, чей тип данных объявлен удостоверением. Seed
numeric Стартовое значение для столбца идентификаторов. Increment
numeric Шаг прироста, который следует использовать для значений в этом столбце. Not For Replication
int IDENTITY
свойство не применяется при входе репликации, например sqlrepl, вставляет данные в таблицу:1
= True0
= FalseСледующий результирующий набор также возвращается для столбцов:
Имя столбца Тип данных Description RowGuidCol
sysname Имя столбца глобального уникального идентификатора. Следующий результирующий набор также возвращается в файловых группах:
Имя столбца Тип данных Description Data_located_on_filegroup
nvarchar(128) Файловая группа, в которой находятся данные: Primary
илиSecondary
Transaction Log
.Следующий результирующий набор также возвращается для индексов:
Имя столбца Тип данных Description index_name
sysname Имя индекса. Index_description
varchar(210) Описание индекса. index_keys
nvarchar(2078) Имена столбцов, на основе которых построен индекс. Возвращает NULL
индексы columnstore, оптимизированные для памяти.Следующий результирующий набор также возвращается по ограничениям:
Имя столбца Тип данных Description 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) Имена столбцов, составляющих ограничение, или, в случае со значениями по умолчанию и правилами, текст, определяющий значение по умолчанию или правило. Следующий результирующий набор также возвращается для объектов ссылки:
Имя столбца Тип данных Description Table is referenced by
nvarchar(516) Указывает другие объекты базы данных, которые ссылаются на таблицу. Следующий результирующий набор также возвращается для хранимых процедур, функций или расширенных хранимых процедур.
Имя столбца Тип данных Description 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.
А. Возврат сведений обо всех объектах
В нижеследующем примере приводится информация о каждом объекте в базе данных master
.
USE master;
GO
EXEC sp_help;
GO
B. Возврат сведений об одном объекте
В нижеследующем примере отображаются сведения о таблице Person.Person
.
USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO