2009-12-17 10 views
6

In SQL Server 2008 habe ich ein hierarchisches Feld (hierarchyid). Wie kann ich den Wert ändern oder eine neue Zeile einfügen, wenn ich den SQL Server Management Studio-Befehl "Zeilen bearbeiten" verwende? Gibt es eine Textdarstellung, die in eine ID umgewandelt wird?Wie hierarchyid Feld als Text in SQL Studio einfügen/bearbeiten

Ja, ich weiß, dass ich es tun könnte eine Abfrage, aber ich möchte manuell geben Sie es als TEXT das Studio-Editor.

Danke!

Antwort

9

Sie einen hierarchyid mit in einen String umwandeln kann:

hierarchyField.ToString(); 

Sie etwas bekommen wie '/ 1 /', '/ 1/1 /', '/ 1/2 /' und so her.

Und Sie können konvertieren solche eine String-Darstellung mit

zu einem hierarchyid zurück
SET hierarchyField = hierarchyid::Parse(string) 

oder

CAST('/2/' AS hierarchyid)  

Weitere Details dazu finden Sie auf Technet

+0

ja, aber wie können Sie diese Nummer im Texttabelle-Editor im Studio eingeben? Das einzige Sonderzeichen, das ich kenne, ist NULL - es wird automatisch von Text in NULL umgewandelt. – Yurik

+3

Ich glaube nicht, dass Sie diese Werte im interaktiven Tabelleneditor eingeben können - Sie müssen dafür ein SQL-Skript verwenden. –

0

finden Sie können die hierarchyid eingeben direkt in die Visual Studio-Tabelle als Zeichenfolgen.

1.) Für die Root-ID geben Sie nur einen Schrägstrich:/

2.) Für eine Ebene tiefer:/1/(muss den Schrägstrich enthalten)

3.) Zum anderen Blatt, das gleiche Niveau wie in Schritt 2 oben:/2/

4.) Für das Kind von/1 /:/1/1/

5.) Zweites Kind von/1 /:/1/2/

usw. Hoffe das hilft.

Verwandte Themen