Parse (moteur de base de données)
Parse convertit la représentation de chaîne canonique d'un hierarchyid en valeur hierarchyid. Parse est appelée implicitement lorsqu'une conversion d'un type chaîne en hierarchyid se produit. Agit comme l'opposé de ToString. Parse() est une méthode statique.
Syntaxe
-- 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 : valeur du type de données character converti.CLR : valeur de chaîne évaluée.
Types de retour
Type de retour SQL Server : hierarchyid
Type de retour CLR : SqlHierarchyId
Notes
Si Parse reçoit une valeur qui n'est pas une représentation de chaîne valide d'un hierarchyid, une exception est levée. Par exemple, si les types de données char contiennent des espaces de fin, une exception est levée.
Exemples
A.Conversion de valeurs Transact-SQL sans table
L'exemple de code suivant utilise ToString pour convertir une valeur hierarchyid en une chaîne et Parse pour convertir une valeur de chaîne en un hierarchyid
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
Voici l'ensemble des résultats.
hierarchyidRepresentation StringRepresentation
------------------------- -----------------------
0x5ADE /1/1/3/
B.Exemple CLR
L'extrait de code suivant appelle la méthode Parse() :
string input = “/1/2/”;
SqlHierarchyId.Parse(input);