wie das analysieren von xml mit Sonderzeichen in sql server
Erhalte ich folgende Fehlermeldung, wenn ich hinzufügen <
in meinem xml,
Msg 9455, Ebene 16, Status 1, Zeile 6 XML-Analyse: Zeile 4, Zeichen 14,
illegale qualifizierten Namen Charakter
Wie kann ich das analysieren von xml mit diese Art von Sonderzeichen?
DECLARE @MyXML XML
SET @MyXML = '<SampleXML>
<Colors>
<Color1>W < hite</Color1>
<Color2>Blue</Color2>
<Color3>Black</Color3>
<Color4 Special="Light">Green</Color4>
<Color5>Red</Color5>
</Colors>
<Fruits>
<Fruits1>Apple</Fruits1>
<Fruits2>Pineapple</Fruits2>
<Fruits3>Grapes</Fruits3>
<Fruits4>Melon</Fruits4>
</Fruits>
</SampleXML>'
SELECT
a.b.value('Colors[1]/Color1[1]','varchar(10)') AS Color1,
a.b.value('Colors[1]/Color2[1]','varchar(10)') AS Color2,
a.b.value('Colors[1]/Color3[1]','varchar(10)') AS Color3,
a.b.value('Colors[1]/Color4[1]/@Special','varchar(10)')+' '+
+a.b.value('Colors[1]/Color4[1]','varchar(10)') AS Color4,
a.b.value('Colors[1]/Color5[1]','varchar(10)') AS Color5,
a.b.value('Fruits[1]/Fruits1[1]','varchar(10)') AS Fruits1,
a.b.value('Fruits[1]/Fruits2[1]','varchar(10)') AS Fruits2,
a.b.value('Fruits[1]/Fruits3[1]','varchar(10)') AS Fruits3,
a.b.value('Fruits[1]/Fruits4[1]','varchar(10)') AS Fruits4
FROM @MyXML.nodes('SampleXML') a(b)
InformationsquelleAutor Haider Ali Wajihi | 2012-03-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ungültige Sonderzeichen & sein Stellvertreter im xml -
&
<
>
"
'
InformationsquelleAutor Haider Ali Wajihi
<
muss angegeben werden, wie<
im XML -Update:
Den Zeichen, die Sie müssen Flucht Knoten Werte sind
<
=><
und&
=>&
.In den Attribut-Werte, die Sie auch brauchen, um zu entkommen
"
=>"
wenn Sie"
um Ihre Attribut-Werte.Dies ist eine gültige XML:
Versuchen, es in eine Abfrage:
Ergebnis:
InformationsquelleAutor Mikael Eriksson
Müssen Sie sicherstellen, dass das XML gültig ist, so müssen Sie sicherstellen, dass keine Sonderzeichen kodiert sind.
z.B.
InformationsquelleAutor AdaTheDev