PARSENAME (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Gibt den angegebenen Teil eines Objektnamens zurück. Die Teile eines Objekts, die abgerufen werden können, sind der Objektname, der Schemaname, der Datenbankname und der Servername.
PARSENAME
gibt nicht an, ob ein Objekt mit dem angegebenen Namen vorhanden ist. PARSENAME
gibt nur den angegebenen Teil des angegebenen Objektnamens zurück.
Transact-SQL-Syntaxkonventionen
Syntax
PARSENAME ('object_name' , object_piece )
Argumente
'object_name'
Der Parameter, der den Namen des Objekts enthält, für das der angegebene Objektteil abgerufen werden soll. Dieser Parameter ist ein optional qualifizierter Objektname. Wenn alle Teile des Objektnamens gekennzeichnet sind, besteht dieser Name aus vier Teilen: dem Server-, Datenbank, Schema- und Objektnamen.
Jeder Teil der Zeichenfolge "object_name" ist sysname, was nvarchar(128) oder 256 Bytes entspricht. Wenn ein Teil der Zeichenfolge 256 Byte überschreitet, PARSENAME
wird NULL
dieser Teil zurückgegeben, da es sich nicht um einen gültigen Sysname handelt.
object_piece
Der zurückzugebende Objektteil. object_piece ist int und kann eine der folgenden Werte sein:
Wert | Beschreibung des Dataflows |
---|---|
1 | Objektname |
2 | Schemaname |
3 | Datenbankname |
4 | Servername |
Rückgabetypen
sysname
Hinweise
PARSENAME
gibt zurück NULL
, wenn eine der folgenden Bedingungen erfüllt ist:
Entweder object_name oder object_piece ist
NULL
.Ein Syntaxfehler tritt auf.
Der angeforderte Objektteil hat eine Länge und
0
ist kein gültiger 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 AdventureWorks2022
-Datenbank zurückzugeben.
-- Uses AdventureWorks
SELECT PARSENAME('AdventureWorks2022.Person.Person', 1) AS 'Object Name';
SELECT PARSENAME('AdventureWorks2022.Person.Person', 2) AS 'Schema Name';
SELECT PARSENAME('AdventureWorks2022.Person.Person', 3) AS 'Database Name';
SELECT PARSENAME('AdventureWorks2022.Person.Person', 4) AS 'Server Name';
GO
Hier sehen Sie das Ergebnis.
Object Name
------------------------------
Person
Schema Name
------------------------------
Person
Database Name
------------------------------
AdventureWorks2022
Server Name
------------------------------
(null)