Как можем да заредим данни в Mysql таблици от XML файлове?? Има ли някакъв начин за четене на данни от XML файлове и запис в MySql база данни.. Имам голяма част от данните в XML файлове.
Благодаря предварително за помощта.
Как можем да заредим данни в Mysql таблици от XML файлове?? Има ли някакъв начин за четене на данни от XML файлове и запис в MySql база данни.. Имам голяма част от данните в XML файлове.
Благодаря предварително за помощта.
Опитайте функцията ЗАРЕДЕТЕ XML (MySQL 6.0). Ето примерния код от справочното ръководство:
Използване на XML документ person.xml, съдържащ:
<?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>
ще създадете таблица така:
CREATE TABLE person (
person_id INT NOT NULL PRIMARY KEY,
fname VARCHAR(40) NULL,
lname VARCHAR(40) NULL,
created TIMESTAMP
);
и използвайте следната команда, за да импортирате XML:
LOAD XML LOCAL INFILE 'person.xml'
INTO TABLE person
ROWS IDENTIFIED BY '<person>';
Или ако използвате MySQL 5.0, можете да използвате LOAD_FILE, за да заредите целия XML документ като низ в една колона и след това да го анализирате с помощта на XPath функционалността на MySQL.
Тази статия на MySQL.com съдържа повече подробности: Използване XML в MySQL 5.1 и 6.0.
Ако търсите просто решение, Navicat има доста проста функция за импортиране на xml.
Защо не използвате XSL, за да преведете XML в стандартни SQL изрази за вмъкване, след което да използвате командата "source" от mysql клиента, за да прочетете изхода?