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);