PARSENAME (Transact-SQL)

Zwraca określoną część nazwy obiektu.Części obiektu mogą być pobierane są nazwy obiektu, nazwa właściciela, nazwa bazy danych i nazwa serwera.

Ostrzeżenie

PARSENAME funkcja nie wskazuje, czy istnieje obiekt o określonej nazwie.PARSENAME po prostu zwraca określoną część nazwy określonego obiektu.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

PARSENAME ( 'object_name' , object_piece ) 

Argumenty

  • 'object_name'
    Jest to nazwa obiektu, który chcesz pobrać część określonego obiektu.object_nameis sysname.Ten parametr jest nazwa kwalifikowana opcjonalnie obiektu.Jeśli wszystkie części nazwy obiektu są kwalifikowane, nazwa ta może mieć cztery części: nazwa serwera, nazwa bazy danych, nazwę właściciela i nazwa obiektu.

  • object_piece
    Stanowi część obiektu, aby powrócić.object_pieceTyp jest inti może mieć następujące wartości:

    1 = Nazwa obiektu

    2 = Nazwa schematu

    3 = Nazwa bazy danych

    4 = Nazwa serwera

Zwracane typy

nchar

Uwagi

PARSENAME zwraca wartość NULL, jeśli spełniony jest jeden z następujących warunków:

  • Albo object_name lub object_piece ma wartość NULL.

  • Występuje błąd składni.

Część żądany obiekt ma długość 0 i nie jest prawidłową Microsoft SQL Server identyfikatora.Nazwa obiektu o zerowej długości renderuje pełnej kwalifikowanej nazwy jako nieprawidłowa.Aby uzyskać więcej informacji, zobacz Używane identyfikatory jako nazwy obiektów.

Przykłady

W poniższym przykładzie użyto PARSENAME do zwracania informacji o Person tabela w AdventureWorks2008R2 bazy danych.

USE AdventureWorks2008R2;
SELECT PARSENAME('AdventureWorks2008R2..Person', 1) AS 'Object Name';
SELECT PARSENAME('AdventureWorks2008R2..Person', 2) AS 'Schema Name';
SELECT PARSENAME('AdventureWorks2008R2..Person', 3) AS 'Database Name';
SELECT PARSENAME('AdventureWorks2008R2..Person', 4) AS 'Server Name';
GO

Oto zestaw wyników.

Object Name

------------------------------

Person

(1 row(s) affected)

Schema Name

------------------------------

(null)

(1 row(s) affected)

Database Name

------------------------------

AdventureWorks2008R2

(1 row(s) affected)

Server Name

------------------------------

(null)

(1 row(s) affected)