2016-10-31 81 views
0

我很努力將CSV文件加載到MySQL服務器的表中。它給我的工作目錄錯誤,我猜使用Java將CSV文件加載到MySQL服務器

C://Users//SCSC//Desktop//district.csv 

這是我輸入錯誤的語法。我已經嘗試了雙斜槓,正斜槓,但都沒有工作。

public void readCsvUsingLoad(Connection conn, String district) { 
    try { 
     String loadQuery = "LOAD DATA LOCAL INFILE 'C://Users//SCSC//Desktop//district.csv' INTO TABLE district FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (District_ID, A2, A3, A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16);"; 
     System.out.println(loadQuery); 
     Statement stmt = conn.createStatement(); 
     stmt.execute(loadQuery); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 
+0

你能分享你得到的錯誤嗎? – Mzf

回答

0

只是爲了確認,您在運行Java的同一臺服務器上運行MySQL服務器,對吧?僅當文件在數據庫服務器上時,MySQL加載才起作用。

如果您想從本地系統加載csv文件到遠程MySQL服務器,您需要解析該文件並運行插入命令。

您還需要確保運行MySQL服務器(mysql?)的用戶可以讀取包含文件的目錄。

+0

我在與Java相同的服務器上運行MySQL。當我在MySQL中運行loadQuery語句時,它可以成功加載csv文件。但是我在java中運行相同的語句時遇到了麻煩。 – Oleole

+0

當我第一次嘗試在MySQL中運行loadQuery語句時,遇到了相同的工作目錄錯誤。所以我將csv文件的位置移動到我的桌面上,嘗試加載csv文件,然後運行。它可能是同一個問題的Java?如果是這樣,我應該將我正在使用的.java文件移到桌面上嗎? – Oleole

相關問題