Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Относится к:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Аналитическая платформа (PDW)
SQL база данных в Microsoft Fabric
Возвращает указанную часть имени объекта. Части объекта, к которым можно получить доступ: имя объекта, имя схемы, имя базы данных и имя сервера.
PARSENAME Не указывает, существует ли объект по указанному имени.
PARSENAME возвращает указанную часть указанного имени объекта.
Соглашения о синтаксисе Transact-SQL
Синтаксис
PARSENAME ('object_name' , object_piece )
Аргументы
'object_name'
Параметр, содержащий имя объекта, для которого требуется получить указанную часть объекта. Этот параметр является необязательным именем объекта. Если указываются все части имени объекта, то это имя может состоять из четырех частей: имени сервера, имени базы данных, имени схемы и имени объекта.
Каждая часть строки "object_name" — имя sysname, эквивалентное nvarchar(128) или 256 байтам. Если любая часть строки превышает 256 байт, PARSENAME возвращается NULL для этой части, так как это недопустимое имя sysname.
object_piece
Возвращаемая часть объекта. object_piece является int и может быть одним из следующих значений:
| значение | Description |
|---|---|
| 1 | Наименование объекта |
| 2 | Имя схемы |
| 3 | Имя базы данных |
| 4 | Имя сервера |
Типы возвращаемых данных
sysname
Замечания
PARSENAME возвращает значение NULL , если одно из следующих условий имеет значение true:
Либо object_name, либоobject_piece
NULL.Синтаксическая ошибка.
Запрошенная часть объекта имеет длину
0и не является допустимым идентификатором SQL Server. Нулевая длина имени объекта делает недействительным полное имя объекта.
Примеры
Следующий пример демонстрирует использование PARSENAME для получения информации о таблице Person в базе данных AdventureWorks2025.
-- Uses AdventureWorks
SELECT PARSENAME('AdventureWorks2022.Person.Person', 1) AS 'Object Name';
SELECT PARSENAME('AdventureWorks2022.Person.Person', 2) AS 'Schema Name';
SELECT PARSENAME('AdventureWorks2022.Person.Person', 3) AS 'Database Name';
SELECT PARSENAME('AdventureWorks2022.Person.Person', 4) AS 'Server Name';
GO
Вот результирующий набор.
Object Name
------------------------------
Person
Schema Name
------------------------------
Person
Database Name
------------------------------
AdventureWorks2022
Server Name
------------------------------
(null)