У меня есть XML-файл, который выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<resultset statement="YOUR SQL STATEMENTS TO GENERATE THIS XML FILE" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<row>
<field name="personal_number">539</field>
<field name="firstname">Name</field>
<field name="lastname">Surname</field>
<field name="email">email.domain.com</field>
<field name="start_time">2011-04-02 13:30:00</field>
<field name="end_time">2011-04-02 18:15:00</field>
<field name="employee_category">1,2,4,5,22,37,38,39,41,43,44</field>
</row>
<row>
<field name="personal_number">539</field>
<field name="firstname">Name</field>
<field name="lastname">Surname</field>
<field name="email">email.domain.com</field>
<field name="start_time">2011-04-02 13:30:00</field>
<field name="end_time">2011-04-02 18:15:00</field>
<field name="employee_category">1,2,4,5,22,37,38,39,41,43,44</field>
</row>
<row>
<field name="personal_number">539</field>
<field name="firstname">Name</field>
<field name="lastname">Surname</field>
<field name="email">email.domain.com</field>
<field name="start_time">2011-04-02 13:30:00</field>
<field name="end_time">2011-04-02 18:15:00</field>
<field name="employee_category">1,2,4,5,22,37,38,39,41,43,44</field>
</row>
Я пытаюсь импортировать его в MySQL с помощью оператора SQL:
use databasename;
LOAD XML LOCAL INFILE '/pathtofile/file.xml' INTO TABLE my_tablename;
Таблица my_tablename имеет следующие поля:
id (auto increment id)
personal_number(varchar)
firstname(varchar)
lastname(varchar)
email(varchar)
start_time(varchar)
end_time(varchar)
employee_category(varchar)
Я получаю сообщение об ошибке: Код ошибки: 1136 Количество столбцов не соответствует значению в строке 1
Я использую MySQL 5.1.56
Я предполагаю, что эта ошибка происходит, потому что таблица базы данных имеет идентификатор поля, которого нет в файле XML.Как можно импортировать этот XML-файл, используя запросы MySQL встроенных функций, так что он пропускает столбец идентификатора во время импорта и использует функцию автоматического увеличения для столбца идентификатора?Есть ли какой-нибудь умный способ обработки импорта файлов XML в MySQL?Может быть, есть лучшее утверждение, которое позволяет указать сопоставление столбцов?
Спасибо!