Parse (Datenbankmodul)
Parse konvertiert die kanonische Zeichenfolgendarstellung einer hierarchyid in einen hierarchyid-Wert. Parse wird als implizit bezeichnet, wenn eine Konvertierung von einem Zeichenfolgentyp in hierarchyid stattfindet. Wirkt als Gegenteil von ToString. Parse() ist eine statische Methode.
Syntax
-- Transact-SQL syntax
hierarchyid::Parse ( input )
-- This is functionally equivalent to the following syntax
-- which implicitly calls Parse():
CAST ( input AS hierarchyid )
-- CLR syntax
static SqlHierarchyId Parse ( SqlString input )
Arguments
input
Transact-SQL: Der Wert des Zeichendatentyps, der konvertiert wird.CLR: Der Zeichenfolgenwert, der ausgewertet wird.
Rückgabetypen
**SQL Server-Rückgabetyp:**hierarchyid
**CLR-Rückgabetyp:**SqlHierarchyId
Hinweise
Wenn Parse einen Wert erhält, der keine gültige Zeichenfolgendarstellung einer hierarchyid ist, wird eine Ausnahme ausgelöst. Wenn beispielsweise char-Datentypen nachfolgende Leerzeichen enthalten, wird eine Ausnahme ausgelöst.
Beispiele:
A. Konvertieren von Transact-SQL-Werten ohne eine Tabelle
Im folgenden Codebeispiel wird mithilfe von ToString ein hierarchyid-Wert in eine Zeichenfolge, und mithilfe von Parse ein Zeichenfolgenwert in eine hierarchyid konvertiert.
DECLARE @StringValue AS nvarchar(4000), @hierarchyidValue AS hierarchyid
SET @StringValue = '/1/1/3/'
SET @hierarchyidValue = 0x5ADE
SELECT hierarchyid::Parse(@StringValue) AS hierarchyidRepresentation,
@hierarchyidValue.ToString() AS StringRepresentation ;
GO
Dies ist das Resultset.
hierarchyidRepresentation StringRepresentation
------------------------- -----------------------
0x5ADE /1/1/3/
B. CLR-Beispiel
Im folgenden Codeausschnitt wird die Parse()-Methode aufgerufen.
string input = “/1/2/”;
SqlHierarchyId.Parse(input);