PARSENAME (Transact-SQL)

Devuelve la parte especificada de un nombre de objeto. Las partes de un objeto que se pueden recuperar son su nombre, el nombre del propietario, el nombre de la base de datos y el nombre del servidor.

[!NOTA]

La función PARSENAME no indica si existe un objeto con el nombre especificado. PARSENAME sólo devuelve la parte especificada del nombre de objeto especificado.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

PARSENAME ( 'object_name' , object_piece ) 

Argumentos

  • 'object_name'
    Es el nombre del objeto del que se desea recuperar la parte de objeto especificada. object_name es de tipo sysname. Este parámetro es un nombre de objeto completo opcionalmente. Si todas las partes del nombre de objeto están completas, este nombre puede tener cuatro partes: el nombre del servidor, de la base de datos, del propietario y del propio objeto.

  • object_piece
    Es la parte del objeto que se va a devolver. object_piece es de tipo int y puede tener estos valores:

    1 = Nombre del objeto

    2 = Nombre del esquema

    3 = Nombre de la base de datos

    4 = Nombre del servidor

Tipos de valor devueltos

nchar

Notas

PARSENAME devuelve NULL cuando se cumple una de las siguientes condiciones:

  • object_name o object_piece son NULL.

  • Se produce un error de sintaxis.

La parte del objeto solicitada tiene una longitud 0 y no es un identificador de MicrosoftSQL Server válido. Un nombre de objeto de longitud cero hace que el nombre completo no sea válido. Para obtener más información, vea Usar identificadores como nombres de objeto.

Ejemplos

En el siguiente ejemplo se utiliza PARSENAME para devolver información acerca de la tabla Contact de la base de datos 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

Éste es el 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)