使用另一个表中的值将xml加载到mysql中
问题描述:
我有一个mysql数据库,我想用xml数据填充,但我希望根据另一个表中的值更改此信息。使用另一个表中的值将xml加载到mysql中
的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
我不希望加载将电影名称放入表格电影细节中,而是使用来自另一个表的电影名称电影片名
+----+--------------------+
| 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 |
+------------+-----------+---------+
请注意,表影片详情电影名称列是从不同的XML(缺少“_”)
是否有在将数据插入mysql数据库之前操作xml数据的方法?
答
如果先将XML文件加载到临时表中,这将是一个好主意。之后,一个简单的查询应该足以从参考表中获取代码。
这样你就可以解决你的两个问题。外键和不同的字段名称。
谢谢何塞,我认为可能有更有效的方法,但这回答了我的问题 – user1966593 2013-04-25 19:20:49