Share via


PARSENAME (Transact-SQL)

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

[!NOTA]

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

Icono de vínculo a temas Convenciones 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 los valores siguientes:

    1 = Nombre del objeto

    2 = Nombre del esquema

    3 = Nombre de la base de datos

    4 = Nombre del servidor

Tipos de valor devueltos

nchar

Comentarios

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 Microsoft SQL Server válido. Un nombre de objeto de longitud cero hace que el nombre completo no sea válido.

Ejemplos

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

El conjunto de resultados es el siguiente.

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)

Vea también

Referencia

ALTER TABLE (Transact-SQL)

CREATE TABLE (Transact-SQL)

Funciones del sistema (Transact-SQL)