PARSENAME (Transact-SQL)

Применимо к:SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)

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

Примечание.

Функция PARSENAME не показывает, существует ли на самом деле объект с данным именем. PARSENAME возвращает всего лишь указанную часть имени объекта.

Соглашения о синтаксисе Transact-SQL

Синтаксис

PARSENAME ('object_name' , object_piece )

Примечание.

Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.

Аргументы

«object_name» — параметр, содержащий имя объекта, из которого будет извлекаться указанный элемент объекта. Данный параметр представляет имя объекта, которое необязательно задано полностью. Если указываются все части имени объекта, то это имя может состоять из четырех частей: имени сервера, имени базы данных, имени схемы и имени объекта. Каждая часть строки «object_name» имеет тип sysname что эквивалентно типу nvarchar (128) или 256 байтам. Если какая-либо часть строки превышает 256 байт, PARSENAME вернет значение NULL для этой части, так как оно не является допустимым значением sysname.

object_piece
Часть объекта, которую необходимо вернуть. Аргумент object_piece имеет тип int и может принимать следующие значения:
1 = имя объекта
2 = имя схемы
3 = имя базы данных
4 = имя сервера

Тип возвращаемых данных

sysname

Замечания

Функция PARSENAME возвращает значение NULL, если выполняется одно из условий:

  • Либо аргумент object_name, либо аргумент object_piece имеет значение NULL.

  • Синтаксическая ошибка.

Запрошенная часть объекта имеет длину 0 и не является допустимым идентификатором Microsoft SQL Server. Нулевая длина имени объекта делает недействительным полное имя объекта.

Примеры

Следующий пример демонстрирует использование PARSENAME для получения информации о таблице Person в базе данных AdventureWorks2022.

-- Uses AdventureWorks  
  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 1) AS 'Object Name';  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 2) AS 'Schema Name';  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 3) AS 'Database Name';  
SELECT PARSENAME('AdventureWorksPDW2012.dbo.DimCustomer', 4) AS 'Server Name';  
GO  

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

Object Name
------------------------------
DimCustomer

(1 row(s) affected)

Schema Name
------------------------------
dbo

(1 row(s) affected)

Database Name
------------------------------
AdventureWorksPDW2012

(1 row(s) affected)

Server Name
------------------------------
(null)

(1 row(s) affected)

См. также