LOAD XML (MySQL)

Uit De Vliegende Brigade
Versie door Jeroen Strompf (overleg | bijdragen) op 10 mei 2018 om 13:25
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Naar navigatie springen Naar zoeken springen

Met het MySQL-commando load xml kun je XML-bestanden importeren:

  • Het kan alleen overweg met platte bestanden, dus zonder subnodes of niet-unieke tagnamen → XSL
  • De doeltabel moet al gedefineerd zijn, inclusief alle velden
  • De veldnamen in de database en de XML-tagnamen moeten overeenkomen → XSL
  • CDATA-velden worden genegeerd → XSL?

Simpel voorbeeld

Doeltabel:

Tabeldefinitie. Auto increment niet vergeten! De namen van de velden komen overeen met de XML-tags

Brondata:

<entry>
  <title> title01 </title>
  <link> link01 </link>
</entry>
<entry>
  <title> title02 </title>
  <link> link02 </link>
</entry>

SQL-code:

load xml local infile '/tmp/02-test.xml' 
  into table tmp
  rows identified by '<entry>';

Zie ook