sql >> Databasteknik >  >> RDS >> Mysql

Massinsättning i MYSQL från XML-filer

Prova LOAD XML funktion (MySQL 6.0). Här är exempelkoden från referensmanualen:

Använda ett XML-dokument person.xml som innehåller:

<?xml version="1.0"?>
<list>
  <person person_id="1" fname="Pekka" lname="Nousiainen"/>
  <person person_id="2" fname="Jonas" lname="Oreland"/>
  <person person_id="3"><fname>Mikael</fname><lname>Ronström</lname></person>
  <person person_id="4"><fname>Lars</fname><lname>Thalmann</lname></person>
  <person><field name="person_id">5</field><field name="fname">Tomas</field><field name="lname">Ulin</field></person>
  <person><field name="person_id">6</field><field name="fname">Martin</field><field name="lname">Sköld</field></person>
</list>

du skulle skapa en tabell så här:

CREATE TABLE person (
    person_id INT NOT NULL PRIMARY KEY,
    fname VARCHAR(40) NULL,
    lname VARCHAR(40) NULL,
    created TIMESTAMP
);

och använd följande kommando för att importera XML:

LOAD XML LOCAL INFILE 'person.xml'
INTO TABLE person
ROWS IDENTIFIED BY '<person>';

Eller om du kör MySQL 5.0 kan du använda LOAD_FILE att ladda hela XML-dokumentet som en sträng i en enda kolumn och sedan analysera det med MySQL:s XPath-funktion.

Den här artikeln på MySQL.com har mer information:Använda XML i MySQL 5.1 och 6.0 .



  1. Klona en SQLite-databas

  2. Ställa in MySQL-konfigurationsvariabler – MySQL 5.7 vs MySQL 8.0

  3. Hur räknar man användarfrågor?

  4. SQL Server 2016:Frågedesigner