2016-06-11 94 views
1

我已經有一個表,我試圖使用外部XML文件中的數據填充。我正在使用LOAD XML INFILE函數,使用下面的查詢。但是,我收到#1290 - The MySQL server is running with the --secure-file-priv option so it cannot execute this statement,查詢無法執行。任何人都可以請啓發我什麼需要做,以便我可以執行它?如何執行LOAD XML INFILE SQL查詢?

以下是供參考的查詢。

LOAD XML INFILE 'C:\\Users\Shubham\Desktop\Part_Info.xml' 
INTO TABLE dbtest.part_no 
ROWS IDENTIFIED BY '<row>'; 
+0

看看[MySQL:如何解決--secure-file-priv](http://stackoverflow.com/questions/32737478/mysql-how-to-tackle-secure-file-priv) – MikeT

+0

@ MikeT感謝您分享的參考鏈接。恐怕我已經看到它和其他一些類似的問題了。我嘗試了他建議的解決方法(將文件移動到由'SHOW VARIABLES LIKE'secure_file_priv';'提示的位置),但它沒有工作,並且仍然與以前一樣陷入了同樣的錯誤。 –

回答

0

我在回答我自己的問題,因爲我自己找到了答案。

對於具體情況,我正在Windows上工作,並安裝了MySQL,並且安裝了一般的WAMP。

我嘗試了@MikeT(在上面的評論中)建議的解決方案。提到的解決方法是

  • 要移動要導入到由SQL查詢SHOW VARIABLES LIKE "secure_file_priv";

但是錯誤(對我來說ATLEAST)依然堅持把secure-file-priv指定的目錄下的文件。但錯誤得到解決(再次,對我來說ATLEAST)通過使用正向斜槓,而不是使用文件路徑反斜槓,通過下面的SQL查詢

LOAD XML INFILE 'D://Secondary/wamp64/tmp/Part_Info.xml' 
INTO TABLE dbtest.part_no 
ROWS IDENTIFIED BY '<row>' 

希望它可以幫助所示。