XML-Daten in eine Tabelle in SQL Server konvertieren
In SQL Server können Sie XML-Daten mithilfe der XML-Daten in ein Tabellenformat konvertieren Typ und XQuery-Ausdrücke. So geht's:
Ansatz 1: Verwenden des Node Value Extractor
Angenommen, Sie haben ein XML-Dokument mit Daten, die wie folgt formatiert sind:
<row> <IdInvernadero>8</IdInvernadero> <IdProducto>3</IdProducto> <IdCaracteristica1>8</IdCaracteristica1> <IdCaracteristica2>8</IdCaracteristica2> <Cantidad>25</Cantidad> <Folio>4568457</Folio> </row> <row> <IdInvernadero>3</IdInvernadero> <IdProducto>3</IdProducto> <IdCaracteristica1>1</IdCaracteristica1> <IdCaracteristica2>2</IdCaracteristica2> <Cantidad>72</Cantidad> <Folio>4568457</Folio> </row>
Um dieses XML in eine Tabelle umzuwandeln, können Sie die folgende XQuery verwenden Ausdruck:
SELECT Tbl.Col.value('IdInvernadero[1]', 'smallint'), Tbl.Col.value('IdProducto[1]', 'smallint'), Tbl.Col.value('IdCaracteristica1[1]', 'smallint'), Tbl.Col.value('IdCaracteristica2[1]', 'smallint'), Tbl.Col.value('Cantidad[1]', 'int'), Tbl.Col.value('Folio[1]', 'varchar(7)') FROM @xml.nodes('//row') Tbl(Col)
Ansatz 2: Verwendung des Attributwertextraktors
Alternativ, wenn Ihre XML-Daten mit Attributen anstelle von Knoten formatiert sind, wie zum Beispiel:
<row IdInvernadero="8" IdProducto="3" IdCaracteristica1="8" IdCaracteristica2="8" Cantidad ="25" Folio="4568457" /> <row IdInvernadero="3" IdProducto="3" IdCaracteristica1="1" IdCaracteristica2="2" Cantidad ="72" Folio="4568457" />
Sie können den folgenden XQuery-Ausdruck verwenden:
SELECT Tbl.Col.value('@IdInvernadero', 'smallint'), Tbl.Col.value('@IdProducto', 'smallint'), Tbl.Col.value('@IdCaracteristica1', 'smallint'), Tbl.Col.value('@IdCaracteristica2', 'smallint'), Tbl.Col.value('@Cantidad', 'int'), Tbl.Col.value('@Folio', 'varchar(7)') FROM @xml.nodes('//row') Tbl(Col)
Diese Abfrage extrahiert die Werte aus den XML-Attributen und wandeln sie in eine Tabelle um Format.
Referenzen:
Das obige ist der detaillierte Inhalt vonWie kann ich XML-Daten mit XQuery in eine SQL Server-Tabelle konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!