Ich habe eine komplexe verschachtelte XML (generierte aus einer C# Einheit Grafik), zum Beispiel:Wie konvertiert man verschachtelte XML in entsprechende Tabellen?
<Customers>
<Customer>
<Id>1</Id>
<Number>12345</Number>
<Addresses>
<Address>
<Id>100</Id>
<Street>my street </street>
<city>London</city>
</Address>
<Address>
<Id>101</Id>
<street>my street 2</street>
<city>Berlin</city>
</Address>
</Addresses>
<BankDetails>
<BankDetail>
<Id>222</Id>
<Iban>DE8439834934939434333</Iban>
</BankDetail>
<BankDetail>
<Id>228</Id>
<Iban>UK1237921391239123213</Iban>
</BankDetail>
</BankDetails>
<Orders>
<Order>
<OrderLine>
</OrderLine>
</Order>
</Orders>
</Customer>
</Customers>
Bevor die oben genannten XML-Daten in die tatsächlichen Tabellen zu speichern, ich brauche es zuerst zu verarbeiten. Aus diesem Grund habe ich entsprechende Tabellentypen angelegt. Jeder dieser Tabellentypen hat eine zusätzliche Spalte (GUID als ROWGUID), so dass ich, wenn ich neue Daten verarbeite (noch nicht zugewiesener Primärschlüssel), einen eindeutigen Schlüssel erzeuge. Ich verwende diese Spalte, um die relationale Integrität zwischen verschiedenen Tabellentypen beizubehalten.
Wie lautet die SQL-Syntax zum Konvertieren der obigen verschachtelten XML in die entsprechenden Tabellen, wobei zu beachten ist, dass untergeordnete Datensätze auf die generierte übergeordnete GUID verweisen müssen?
Ihr XML ist ungültig (falsches schließendes Tag '') und da sind einige '>' Zeichen am falschen Ort ... ('* my street> *') –
Shnugo
Diese Frage wurde bereits beantwortet : http://stackoverflow.com/questions/3989395/convert-xml-to-table-sql-server – Penman
@Shnugo Typo behoben. –