我在MySQL中是全新的,并尝试使用XMl文件在MySQL表中插入多行但不能这样做。 我的查询成功执行但在表中的列中插入null时。下面是查询和XML文件的代码。
set @xml := load_file('c:/xmldistributortransaction.xml');
insert into xmldistributortransaction (DistributorId,ProductId,Remarks,Quantity,Price,DIscount,TaxName,Total,AddedDate) values (
extractValue(@xml,'/resultset/row[1]/field[1]/text()'),
extractValue(@xml,'/resultset/row[1]/field[2]/text()'),
extractValue(@xml,'/resultset/row[1]/field[3]/text()'),
extractValue(@xml,'/resultset/row[1]/field[4]/text()'),
extractValue(@xml,'/resultset/row[1]/field[5]/text()'),
extractValue(@xml,'/resultset/row[1]/field[6]/text()'),
extractValue(@xml,'/resultset/row[1]/field[7]/text()'),
extractValue(@xml,'/resultset/row[1]/field[8]/text()'),
extractValue(@xml,'/resultset/row[1]/field[9]/text()'));
XML文件
<?xml version="1.0"?>
<resultset statement="select DistributorId,ProductId,Remarks,Quantity,Price,DIscount,TaxName,Total,AddedDate from xmldistributortransaction">
<row>
<field name="DistributorId">2</field>
<field name="ProductId">20 </field>
<field name="Remarks">remarks for second</field>
<field name="Quantity" >300</field >
<field name="Price">30</field>
<field name="Discount">2 </field>
<field name="TaxName">VAT4</field>
<field name="Total">240</field>
<field name="AddedDate">2012-04-02</field>
</row>
</resultset>
答案 0 :(得分:2)
您可以尝试LOAD XML(MySQL)命令。
在MySQL 5.5中添加了LOAD XML语句语法。
例如 -
LOAD XML LOCAL INFILE 'xmldistributortransaction.xml'
INTO TABLE xmldistributortransaction
ROWS IDENTIFIED BY '<row>';