2016-12-07 110 views
0

所以我有這個腳本,我需要從Java Web應用程序執行。 包含該行的文件位於WEB-INF使用postgres腳本從JAVA導入CSV

truncate table amm.mm_dosage_unit; 
    alter table amm.mm_dosage_unit add column code_new_version character varying(1); 
    copy amm.mm_dosage_unit FROM 'code_list.csv' DELIMITER ',' CSV; 

我使用讀取器來執行每行的。 問題是我不知道如何分辨我的.csv文件的正確路徑,並且我得到No such file or directory錯誤。

任何想法

+0

在PostgreSQL中,當您使用'COPY'命令(而不是psql中的'\ copy'命令)時,它在運行PostgreSQL的服務器上查找文件,而不是在客戶端。您的Web應用程序是否與PostgreSQL在同一臺機器上運行? – RealSkeptic

+0

是的。它始終是同一臺機器。 – user2960896

+0

然後,您需要指定csv文件的完整路徑,並確保運行PostgreSQL的用戶帳戶可以讀取文件夾和文件本身的層次結構。 – RealSkeptic

回答

0

據我瞭解,在SQL查詢的服務器,它是一個獨立的文件系統來運行Web應用程序的客戶端上運行。

sql服務器將在服務器上查找文件,而CSV文件實際位於客戶端的機器上。