Beste Weg zum speichern von XML-Daten in Datenbank

Ich habe die XML-Datei mit mehreren Ebenen von Kindern. Welcher ist der beste Weg, um die Daten zu speichern in die Datenbank? Verschiedene Tabelle für Knoten und speichern Sie die Daten mit der Beziehung oder? Was ist zu tun, wenn wir über 50 verschiedene Knoten ?

Ähnlich XML

<storage>
   <product description="Cardigan Sweater" product_image="cardigan.jpg">
      <storage_item gender="Men's">
         <item_number>QWZ5671</item_number>
         <price>39.95</price>
         <size description="Medium">
            <color image="red_cardigan.jpg">Red</color>
            <color image="burgundy_cardigan.jpg">Burgundy</color>
         </size>
         <size description="Large">
            <color image="red_cardigan.jpg">Red</color>
            <color image="burgundy_cardigan.jpg">Burgundy</color>
         </size>
      </storage_item>
      <storage_item gender="Women's">
         <item_number>RRX9856</item_number>
         <price>42.50</price>
         <size description="Small">
            <color image="red_cardigan.jpg">Red</color>
            <color image="navy_cardigan.jpg">Navy</color>
            <color image="burgundy_cardigan.jpg">Burgundy</color>
         </size>
         <size description="Medium">
            <color image="red_cardigan.jpg">Red</color>
            <color image="navy_cardigan.jpg">Navy</color>
            <color image="burgundy_cardigan.jpg">Burgundy</color>
            <color image="black_cardigan.jpg">Black</color>
         </size>
         <size description="Large">
            <color image="navy_cardigan.jpg">Navy</color>
            <color image="black_cardigan.jpg">Black</color>
         </size>
         <size description="Extra Large">
            <color image="burgundy_cardigan.jpg">Burgundy</color>
            <color image="black_cardigan.jpg">Black</color>
         </size>
      </storage_item>
   </product>
</storage>
  • Hängt davon ab, was Sie es verwenden möchten. Wenn Sie nur wollen, um es zu speichern und es zurück Holen wie Sie ist, verwenden Sie ein blob. Wenn Sie wollen, um tatsächlich mit den Daten arbeiten, z.B., finden der Durchschnittliche Preis für Ihre Artikel haben, teilen Sie Sie und erstellen Sie verschiedene Tabellen wie benötigt.
InformationsquelleAutor Adnan | 2017-03-11



One Reply
  1. 0

    Können Sie konvertieren das Format von XML zu JSON-format, und speichern Sie es in einer NoSQL-Datenbank wie MongoDB.

    UPDATE : Wenn Sie brauchen, um es zu speichern in einer SQL-Datenbank, ich denke, du brauchst JAXB oder XMLBeans zu konvertieren, um java-Objekte und verwenden Sie dann JDBC oder JPA zu speichern in der DB.

    Bonus-Idee (Tristan) : In der zweiten Lösung, man kann auch für entschieden, auf welchen Teil der XML, die Sie tatsächlich benötigen präzise Daten in SQL-DB und für den anderen Teil würden Sie es speichern in einem CLOB-Feld.

    • ich weiß, dass, aber ich benutze Bezug db (mySQL)
    • Dann Lesen Sie den zweiten Satz 😉
    • Sorry, ich habe gerade den zweiten Satz nach seinem Kommentar.
    • Ich habe bereits konvertieren Sie es in java. Aber ist das die beste Art und Weise zu manipulieren, die mit xml ? schau mal, was ich ich 50 verschachtelte Knoten ich machen kann, 50 Tabellen….
    • Ich denke, es hängt, wenn Sie nicht brauchen, die Konsistenz dieser Daten, speichern Sie die xml direkt in eine Spalte. Sie könnten products und storage_items Tabellen und speichern Sie size in einer Spalte im xml-format.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.