LOAD XML LOCAL INFILE不加载所有列

时间:2016-04-15 13:18:48

标签: mysql xml

我有一个XML文件(~8MB),结构如下:

<products>
    <product>
        <name>TALLY trumma</name>
        <categories>
            <category>Category 1</category>
            <category>Category 2</category>
            <category>Category 3</category>
        </categories>
        <SKU>44957</SKU>
        <EAN/>
        <description>Desctiption text blaha...</description>
        <model/>
        <brand>TALLY</brand>
        <gender/>
        <price>10789.00</price>
        <regularPrice>10789.00</regularPrice>
        <shippingPrice/>
        <currency>SEK</currency>
        <productUrl>http://www.example.com</productUrl>
        <graphicUrl/>
        <inStock/>
        <inStockQty/>
        <deliveryTime/>
    </product>
    <product>
    ...
    </product>
</products>

现在我想将此文件加载到MySQL数据库中。所以我使用:

创建一个表
CREATE TABLE myTable (
    name varchar (255),
    productUrl varchar (255)
    );

尝试使用以下方法加载数据:

LOAD XML LOCAL INFILE 'thefile.xml'
    INTO TABLE myTable
    ROWS IDENTIFIED BY '<product>';

因此,产品URL将加载到数据库中,但不会加载到产品名称中。这是为什么?我尝试了几个不同的列,但只会加载URL。

编辑:我设法加载currencygraphicUrl。但是没有其他值传输到数据库。这很奇怪吗?

0 个答案:

没有答案