Compartir a través de


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 de cuyo nombre se desea recuperar la parte 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:

  • El parámetro object_name o object_piece es NULL.
  • Se produce un error de sintaxis.

La parte del objeto solicitada tiene una longitud 0 y no es un identificador de Microsoft SQL Server 2005 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)

Vea también

Referencia

ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)
Funciones del sistema (Transact-SQL)

Ayuda e información

Obtener ayuda sobre SQL Server 2005