2013-04-25 79 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

相關問題