Ich habe ein ziemlich komplexes XML-Dokument, das ich auf Tabellen in SQL Server 2005 abflachen möchte. Ich möchte nicht jede Feld- und Tabellenzuordnung manuell codieren müssen. Da die Daten in den Staging-Bereich eines Data Warehouse gehen, ist es nicht so wichtig, wie die Tabellen strukturiert sind.Shred komplexe XML-Daten in viele Tabellen in SQL?
Bisher habe ich in Betracht gezogen haben, und wies die folgende ...
OpenXML - es scheint, dass ich die xml in den Speicher in SQL lesen kann diese verwenden, aber dann eine Last von SQL schreiben müssen, um führe alle Einsätze durch. Nein Danke.
XML Bulk Load - sieht ziemlich gut aus, aber ich habe den Eindruck, dass ich eine XSD schreiben soll, die alle Beziehungen beschreibt. Ich verstehe nicht, warum ich sollte, wenn sie in der hierarchischen Struktur des XML enthalten sind.
SqlBulkCopy - sieht so aus, als müsste ich noch alle Mapping-Sachen schreiben.
Nachdem ich all diese Dinge abgelehnt habe, denke ich darüber nach, meine eigene in C# zu rollen, die Idee scheint ziemlich einfach zu sein. Lesen Sie die Daten in einen xmlReader, führen Sie den Baum durch und generieren Sie die Einfügungen. Ich kann eine separate Aktion ausführen, die nur zur Entwicklungszeit ausgeführt wird, um das Schema zu generieren.
Irgendwelche Gedanken dazu?