加载XML的问题

时间:2013-06-07 06:22:06

标签: mysql mysql-workbench

我有一个xml文件,其中包含以下数据:

<root>
<application>
    <field name="ApplicationName">Google App</field>
    <Group>
    <field name="GroupName">MidasGoogleAppsUsers</field>

    <field name="UserName">knikkhoo</field>
    <field name="UserName">devendrat</field>
    </Group>    

</application>

</root>

然后我尝试使用LOAD XML函数将此XML的数据插入到数据库中:

LOAD XML LOCAL INFILE 'UserApplication.xml'
INTO TABLE userapplication
 ROWS IDENTIFIED BY '<application>';

但插入后我只得到一行数据为:

ID  ApplicationName GroupName   UserName
1   Google App  MidasGoogleAppsUsers    devendrat

我想要的输出是:

ID  ApplicationName GroupName   UserName
1   Google App  MidasGoogleAppsUsers    devendrat
2   Google App  MidasGoogleAppsUsers    knikkhoo

请帮忙......

2 个答案:

答案 0 :(得分:1)

您可以简化XML结构:

<list>
  <detail>
      <ApplicationName>Google App</ApplicationName>
      <GroupName>MidasGoogleAppsUsers</GroupName>
      <UserName>devendrat</UserName>
  </detail>
  <detail>
      <ApplicationName>Google App</ApplicationName>
      <GroupName>MidasGoogleAppsUsers</GroupName>
      <UserName>knikkhoo</UserName>
  </detail>
</list> 

使用以下代码导入它:

LOAD XML LOCAL INFILE 'sample.xml' INTO TABLE details  ROWS IDENTIFIED BY '<detail>';

希望这会有所帮助!!

〜ķ

答案 1 :(得分:0)

如果您将<application>的行标识改为<Group>

,您会看到什么?
LOAD XML LOCAL INFILE 'UserApplication.xml'
INTO TABLE userapplication
 ROWS IDENTIFIED BY '<Group>';