0

我有一个 mysql 数据库,我想用 xml 数据填充它,但我希望此信息根据另一个表中的值而改变。

xml 文件如下所示:

D<DATAROW num="1">
<FILM_DATE>20/04/2013</FILM_DATE> 
<FILM_NAME>DAYS OF THUNDER</FILM_NAME> 
<FILM_REVENUE>100</ FILM_REVENUE >
D<DATAROW num="2">
<FILM_DATE>21/04/2013</FILM_DATE> 
<FILM_NAME>TOP GUN</FILM_NAME> 
<FILM_REVENUE>120</ FILM_REVENUE > 
D<DATAROW num="3">
<FILM_DATE>20/04/2013</FILM_DATE> 
<FILM_NAME> MISSION IMPOSSIBLE </FILM_NAME> 
<FILM_REVENUE>100</ FILM_REVENUE >

例如,我想将带有电影标题和日期的 xml 文件加载到电影详细信息表中

Load XML Local Infile ‘C:\film_details.xml
Into table film details

我不想将电影名称加载到 Film Details 表中,而是使用另一个名为 Film Titles 的表中的 id

+----+--------------------+
| ID |     Film Name      |
+----+--------------------+
|  1 | Vanilla Sky        |
|  2 | Days of Thunder    |
|  3 | Top Gun            |
|  4 | Mission Impossible |
+----+--------------------+

我希望电影详细信息表如下所示

+------------+-----------+---------+
|    Date    | Film Name | Revenue |
+------------+-----------+---------+
| 20/04/2013 |         2 |     100 |
| 21/04/2013 |         3 |     120 |
| 20/04/2013 |         4 |     100 |
+------------+-----------+---------+

请注意,表 Film Details 中的 Film Name 列与 XML 中的不同(缺少“_”)

有没有办法在将 xml 数据插入 mysql 数据库之前对其进行操作?

4

1 回答 1

0

如果您首先将 XML 文件加载到临时表中,那将是一个好主意。之后,一个简单的查询就足以从引用表中获取代码。

这样你就可以解决你遇到的两个问题。外键和不同的字段名称。

于 2013-04-25T14:14:46.010 回答