【发布时间】:2022-01-05 07:58:39
【问题描述】:
我正在将一个 XML 文件从 Internet 导入我的 MySQL 数据库,但我遇到了一些问题,因为它包含一些多变量属性。例如,每个项目可能有 1 个“类别”标签或 3 个。在数据库关系中,这个属性应该形成自己的表,但我不知道如何连接这样的东西。下面是我正在处理的一个简短示例。
<Library>
<Book>
<Author> Dave </Author>
<Title> XML Help </Title>
<Category> Computers </Category>
<Category> XML </Category>
</Book>
</Library>
我知道下面的基本语法
LOAD XML LOCAL INFILE 'file.xml' INTO TABLE table ROWS IDENTIFIED BY '<Value>';
这假设每个属性只有一个值。我无法编辑 xml 文件,因为它有数十万行长,无论如何我都希望自动化这个过程。感谢您的帮助。
【问题讨论】:
-
你检查过manual
-
LOAD XML 在没有额外处理的情况下无法加载此类文件。
-
加载 xml 一次只能用于填充一个表。使用上面的 xml 文件,您可以通过两次运行创建一个 books 和一个 categories 表,但是它将无法填充两个表之间的联结表。您需要使用外部编程语言处理xml文件。