使用WHERE条件在mysql中加载xml infile查询

时间:2013-09-24 11:34:01

标签: mysql

我编写了以下查询,将数据从xml文件插入到mysql表中:

load XML local infile 'D:\\a.xml' into table asdb.abc rows identified by '<ApplicantName>';

它会在表格中插入值。我在abc表中有一个名为AckNo的列。我需要插入xml值,其中ackNo等于特定值。例如我尝试编写以下查询,但它不起作用:

load XML local infile 'D:\\a.xml' into table asdb.abc rows identified by '<ApplicantName>' where ackNo='1';

非常感谢有人的帮助。

1 个答案:

答案 0 :(得分:0)

我认为您不能在WHERE使用LOAD INFILE子句。

检查documentation

我认为您必须解析XML文件并保留所需的值,然后在使用LOAD DATA之前生成另一个XML文件。

或更轻松,更快捷:

  • 加载所有内容
  • DELETE FROM your_table WHERE your_id!=“the_value_you_want”