Share via


PARSENAME (Transact-SQL)

Retorna a parte especificada de um nome de objeto. As partes de um objeto que podem ser recuperadas são o nome do objeto, o nome do proprietário, o nome do banco de dados e o nome do servidor.

ObservaçãoObservação

A função PARSENAME não indica se existe um objeto pelo nome especificado. PARSENAME apenas retorna a parte especificada do nome de objeto especificado.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

PARSENAME ( 'object_name' , object_piece ) 

Argumentos

  • 'object_name'
    É o nome do objeto para o qual a parte de objeto especificada deve ser recuperada. object_name é sysname. Este parâmetro é um nome de objeto opcionalmente qualificado. Se todas as partes do nome do objeto forem qualificadas, esse nome poderá ter quatro partes: o nome do servidor, o nome do banco de dados, o nome do proprietário e o nome do objeto.

  • object_piece
    É a parte do objeto a ser retornada. object_piece é do tipo int e pode ter estes valores:

    1 = Nome do objeto

    2 = Nome do esquema

    3 = Nome do banco de dados

    4 = Nome do servidor

Tipos de retorno

nchar

Comentários

PARSENAME retornará o NULL se uma das seguintes condições for verdadeira:

  • Se object_name ou object_piece for NULL.

  • Um erro de sintaxe ocorre.

A parte do objeto solicitada tem um comprimento de 0 e não é um identificador válido do MicrosoftSQL Server. Um nome de objeto de comprimento zero processa o nome qualificado completo como não válido. Para obter mais informações, consulte Utilizando identificadores como nomes de objetos.

Exemplos

O exemplo a seguir usa PARSENAME para retornar informações sobre a tabela Contact no banco de dados AdventureWorks.

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

Conjunto de resultados.

Object Name                    
------------------------------ 
Contact                        

(1 row(s) affected)

Schema Name                     
------------------------------ 
(null)                         

(1 row(s) affected)

Database Name                  
------------------------------ 
AdventureWorks                           

(1 row(s) affected)

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

(1 row(s) affected)