2014-11-23 60 views
0

我正在使用以下命令从xml文件加载记录到mysql数据库。但是每次有一些记录在表中插入为空。MySQL载入不插入所有xml记录

LOAD XML LOCAL INFILE 'xml_file_path' INTO TABLE table_name ROWS IDENTIFIED BY '<column1>'; 

xml文件是:

<?xml version="1.0" encoding="UTF-8"?> 
<data> 
<column1>Brother</column1> 
<column2>Alex</column2> 
<column3>SONTOSH</column3> 
--- 
--- 
</data> 

如何避免在数据库空条目?

回答

0

尝试:

文件:data.xml

<?xml version="1.0" encoding="UTF-8"?> 
<data> 
    <column1>Brother</column1> 
    <column2>Alex</column2> 
    <column3>SONTOSH</column3> 
</data> 

SQL:

mysql> CREATE TABLE `data` (
    -> `column1` VARCHAR(40) DEFAULT NULL, 
    -> `column2` VARCHAR(40) DEFAULT NULL, 
    -> `column3` VARCHAR(40) DEFAULT NULL 
    ->); 
Query OK, 0 rows affected (0.01 sec) 

mysql> LOAD XML INFILE '/path/to/data.xml' 
    -> INTO TABLE `data` 
    -> ROWS IDENTIFIED BY '<data>'; 
Query OK, 1 row affected (0.00 sec) 

mysql> select `column1`, `column2`, `column3` 
    -> from `data`; 
+---------+---------+---------+ 
| column1 | column2 | column3 | 
+---------+---------+---------+ 
| Brother | Alex | SONTOSH | 
+---------+---------+---------+ 
1 row in set (0.00 sec)