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.
Dica
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.
Convenções da sintaxe Transact-SQL
Aplica-se a: SQL Server (SQL Server 2012 até a versão atual), Banco de dados SQL do Windows Azure (versão inicial até a versão atual). |
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.
Exemplos
O exemplo a seguir usa PARSENAME para retornar informações sobre a tabela Person no banco de dados AdventureWorks2012.
USE AdventureWorks2012;
SELECT PARSENAME('AdventureWorks2012..Person', 1) AS 'Object Name';
SELECT PARSENAME('AdventureWorks2012..Person', 2) AS 'Schema Name';
SELECT PARSENAME('AdventureWorks2012..Person', 3) AS 'Database Name';
SELECT PARSENAME('AdventureWorks2012..Person', 4) AS 'Server Name';
GO
Aqui está o conjunto de resultados.
Object Name
------------------------------
Person
(1 row(s) affected)
Schema Name
------------------------------
(null)
(1 row(s) affected)
Database Name
------------------------------
AdventureWorks2012
(1 row(s) affected)
Server Name
------------------------------
(null)
(1 row(s) affected)