2013-04-25 38 views
0

我有一个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数据的方法?

回答

0

如果先将XML文件加载到临时表中,这将是一个好主意。之后,一个简单的查询应该足以从参考表中获取代码。

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

+0

谢谢何塞,我认为可能有更有效的方法,但这回答了我的问题 – user1966593 2013-04-25 19:20:49

相关问题