PARSENAME (Transact-SQL)

Restituisce la parte specificata del nome di un oggetto. Le parti di un oggetto che è possibile recuperare sono il nome dell'oggetto, il nome del proprietario, il nome del database e il nome del server.

[!NOTA] La funzione PARSENAME non indica se esiste un oggetto avente il nome specificato. PARSENAME restituisce solo la parte specificata del nome di oggetto specificato.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

PARSENAME ( 'object_name' , object_piece ) 

Argomenti

  • 'object_name'
    Nome dell'oggetto per cui recuperare la parte specificata. object_name è di tipo sysname. Questo parametro rappresenta un nome di oggetto che può essere qualificato facoltativamente. Se vengono qualificate tutte le parti del nome dell'oggetto, il nome può essere costituito da quattro parti: nome del server, nome del database, nome del proprietario e nome dell'oggetto.
  • object_piece
    Parte dell'oggetto da restituire. object_piece è di tipo int. I possibili valori sono i seguenti.

    1 = nome dell'oggetto

    2 = nome dello schema

    3 = nome del database

    4 = nome del server

Tipi restituiti

nchar

Osservazioni

PARSENAME restituisce NULL se si verifica una delle condizioni seguenti:

  • object_name o object_piece è NULL.
  • Si verifica un errore di sintassi.

La lunghezza della parte dell'oggetto richiesta è uguale a 0 e la parte dell'oggetto non è un identificatore di Microsoft SQL Server 2005 valido. Se la lunghezza del nome dell'oggetto è pari a 0, il nome completo risulta non valido. Per ulteriori informazioni, vedere Utilizzo degli identificatori come nomi di oggetti.

Esempi

Nell'esempio seguente viene utilizzato PARSENAME per restituire informazioni sulla tabella Contact nel database 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

Set di risultati:

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)

Vedere anche

Riferimento

ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)
Funzioni di sistema (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005