PARSENAME (Transact-SQL)
Gibt den angegebenen Teil eines Objektnamens zurück. Die Teile eines Objekts, die abgerufen werden können, sind der Objektname, der Besitzername, der Datenbankname und der Servername.
Hinweis
Die PARSENAME-Funktion zeigt nicht an, ob ein Objekt mit dem angegebenen Namen vorhanden ist.PARSENAME gibt lediglich den angegebenen Teil des gegebenen Objektnamens zurück.
Transact-SQL-Syntaxkonventionen
Gilt für: SQL Server (SQL Server 2012 bis aktuelle Version), Windows Azure SQL-Datenbank (Ursprüngliche Version bis aktuelle Version). |
Syntax
PARSENAME ( 'object_name' , object_piece )
Argumente
'object_name'
Der Name des Objekts, für das der angegebene Objektteil abgerufen werden soll. object_name ist vom Datentyp sysname. Dieser Parameter ist ein optional gekennzeichneter Objektname. Wenn alle Teile des Objektnamens gekennzeichnet sind, besteht dieser Name aus vier Teilen: dem Server-, Datenbank, Besitzer- und Objektnamen.object_piece
Der Objektteil, der zurückgegeben werden soll. object_piece ist vom Datentyp int und kann folgende Werte haben:1 = Objektname
2 = Schemaname
3 = Datenbankname
4 = Servername
Rückgabetypen
nchar
Hinweise
PARSENAME gibt NULL zurück, wenn eine der folgenden Bedingungen wahr ist:
Entweder object_name oder object_piece ist NULL.
Ein Syntaxfehler tritt auf.
Der angeforderte Objektteil hat eine Länge von 0 und ist kein gültiger Microsoft SQL Server-Bezeichner. Ein Objektname mit der Länge 0 macht den gesamten qualifizierten Namen ungültig.
Beispiele
Im folgenden Beispiel wird PARSENAME verwendet, um Informationen zur Person-Tabelle in der AdventureWorks2012-Datenbank zurückzugeben.
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
Dies ist das Resultset.
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)