2016-04-10 6 views
-3


Мне нужно получить значения из файла XML.
Я попытался НАГРУЗКИ XML INFILE, но у меня есть некоторые проблемы с детьми теги
структура Мой XML, как следующее:Загрузка XML-файла в MySQL

<?xml version="1.0" ?> 
<list> 
     <cli> 
     <num_id>120</num_id> 
     <contact> 
      <nom>DUPOND</nom> 
      <prenom>Pierre</prenom> 
     </contact> 
     <relation>253</relation> 
     <adresse> 
      <adresse_c>route de la mer</adresse_c> 
      <code_postal>64200</code_postal> 
      <ville>Biarritz</ville> 
     </adresse> 
    </cli> 
    <cli> 
     <num_id>121</num_id> 
     <contact> 
      <nom>Henry</nom> 
      <prenom>Claude</prenom> 
     </contact> 
     <relation>511</relation> 
     <adresse> 
      <adresse_c>rue de blabla</adresse_c> 
      <code_postal>75001</code_postal> 
      <ville>Paris</ville> 
     </adresse> 
    </cli> 
</list> 

Как сделать? Спасибо.

EDIT:
Мне нужно получить значения из каждого тега для вставки в базу данных. Моя структура базы данных:

CREATE table client (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, 
    num_id INT(5) NOT NULL, 
    nom VARCHAR(30) NOT NULL, 
    prenom VARCHAR(30) NOT NULL, 
    relation INT(5) NOT NULL, 
    adresse_c VARCHAR(150) NOT NULL, 
    code_postal INT(5) NOT NULL, 
    ville VARCHAR(30) NOT NULL 
) 

Я попытался LOAD XML INFILE 'test.xml' INTO TABLE infos.client ROWS IDENTIFIED BY '<cli>';
Но у меня есть только значения из num_id и отношения.
Значения от детских тегов (nom, prenom, adresse_c, code_postal, ville>) не получаются.
Как я могу получить все остальные значения?

ответ

0

Вы можете создать столбец blob (т. Е. Столбец контекста) или
Попробуйте использовать команду LOAD XML.

+0

i did => LOAD XML INFILE 'test.xml' INTO TABLE tableInfos.testxml ROWS IDENTIFIED BY ''; Но он пропускает все значения из тегов для детей. – Mark

+0

@Mark - ваш XML хорошо отформатирован? – LearningPhase

+0

Привет, мой XML хорошо отформатирован. – Mark

Смежные вопросы