PARSENAME (Transact-SQL)
Retourne la partie spécifiée d'un nom d'objet. Les parties d'un objet pouvant être extraites sont le nom de l'objet, le nom du propriétaire, le nom de la base de données et le nom du serveur.
Remarque : |
---|
La fonction PARSENAME n'indique pas s'il existe déjà un objet portant le nom spécifié. Elle se limite à retourner la partie indiquée du nom d'objet spécifié. |
Conventions de syntaxe de Transact-SQL
Syntaxe
PARSENAME ( 'object_name' , object_piece )
Arguments
'object_name'
Nom de l'objet contenant la partie d'objet spécifiée à extraire. L'argument object_name est de type sysname. Ce paramètre représente un nom d'objet éventuellement qualifié. Si toutes les parties du nom de l'objet sont qualifiées, ce nom peut se composer de quatre parties : le nom du serveur, le nom de la base de données, le nom du propriétaire et le nom de l'objet.
object_piece
Partie de l'objet à retourner. L'argument object_piece est de type int et peut prendre les valeurs suivantes :
1 = Nom de l'objet
2 = Nom du schéma
3 = Nom de la base de données
4 = Nom du serveur
Notes
La fonction PARSENAME retourne NULL si l'une des conditions suivantes est vraie :
- object_name ou object_piece a la valeur NULL ;
- une erreur de syntaxe s'est produite.
La partie d'objet recherchée a une longueur égale à 0 et n'est pas un identificateur Microsoft SQL Server 2005 valide. Un nom d'objet d'une longueur égale à 0 invalide la totalité du nom qualifié. Pour plus d'informations, consultez Utilisation des identificateurs comme noms d'objet.
Types de retour
nchar
Exemple
L'exemple suivant utilise PARSENAME
pour retourner des informations sur la table Contact
de la base de données 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
Voici l'ensemble des résultats.
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)
Voir aussi
Référence
ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)
Fonctions système (Transact-SQL)