使用 PostgreSQL 的 COPY 语句,我们可以将文本文件中的数据加载到数据库的表中,如下所示:
COPY CME_ERROR_CODES FROM E'C:\\Program Files\\ERROR_CODES\\errcodes.txt' DELIMITER AS '~'
上面的语句是从一台具有 postgresql 客户端的机器上运行的,而服务器在另一台 Windows 机器上。运行上述语句是在抱怨我ERROR: could not open file "C:\Program Files\ERROR_CODES\errcodes.txt" for reading: No such file or directory
。
经过一番研究,我观察到该COPY
语句正在postgresql服务器的机器上的同一路径(C:\ Program Files \ ERROR_CODES)中寻找加载器文件(errcodes.txt)。为了测试这一点,我在 postgresql 服务器的机器上创建了相同的文件夹结构,并将 errcodes.txt 文件保存在那里。然后 COPY 语句运行良好。COPY 语句对我来说看起来非常严格。是否需要任何设置来避免这种情况?还是 COPY 语句的行为?我没有找到有关 PostgreSQL 文档的任何信息。