2016-11-22 56 views
0

我必須從CSV文件中將一些數據導入到我的Aruba服務器上的db表中。 我用下面的查詢:#1148 - 這個MariaDB版本不允許使用命令

LOAD DATA LOCAL INFILE 'test.csv' INTO TABLE dailycoppergg 
     FIELDS TERMINATED BY ',' 
     LINES TERMINATED BY '\r\n' 
     (
      ddmmyy, 
      lmedollton, 
      changedolleuro, 
      euroton, 
      lmesterton, 
      delnotiz, 
      girm, 
      sgm 
     ) 

我測試此查詢其他阿魯巴服務器上,它的工作正常,但在這裏,我以下錯誤:

#1148 - Il comando utilizzato non e` supportato in questa versione di MariaDB 

如何修改我的查詢將csv文件數據導入到dailycoppergg表中?你能幫我嗎?謝謝!

回答

1

查詢很好,但MySQL客戶端(mysql)在默認情況下禁用本地infile,您需要將其運行爲mysql --local-infile ...,然後相同的查詢應該可以工作。

錯誤消息是遺留的,它令人困惑。

+0

謝謝,你能告訴我如何從我的託管服務的管理面板設置? – luca

+1

這很大程度上取決於您的託管服務,管理面板,您可以配置多少,您可以訪問的內容等等。首先,如果您可以從面板運行查詢,請運行'select @@ local_infile' 。如果它表示「0」,這意味着它出於安全原因(這很聰明)在服務器端被禁用,所以你可以忘記它。如果它說'1',它在服務器上啓用,然後找出你可以在客戶端配置什麼。在不太可能的情況下,您可以訪問客戶端配置文件,您可以在'[client]'部分設置'loose-local-infile = 1'。 – elenst

+0

如果你沒有權限訪問客戶端運行的主機,那麼問題在於你爲什麼需要'LOAD DATA LOCAL INFILE'開始,因爲它假定文件存在於客戶端主機上,並且沒有訪問權限,你可以放在那裏。如果您有訪問客戶端主機的FTP權限,但無法訪問客戶端配置文件,並且管理面板中沒有用於配置客戶端選項的工具,請詢問您的託管支持,如果您有這種情況,他們可能會爲您啓用它。 – elenst

0

由於您使用的是phpMyAdmin,我強烈建議您只使用導入選項卡,而不是在SQL選項卡中手動輸入導入查詢。 phpMyAdmin可以輕鬆導入CSV文件,並且我沒有看到任何手動輸入查詢的優點。