You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用pgAdmin4在PostgreSQL正确导入CSV?文件找不到报错原因

PostgreSQL COPY导入CSV报错的原因分析

问题场景

在Windows环境下使用pgAdmin4连接本地PostgreSQL数据库,执行以下COPY语句导入CSV文件:

COPY
employee(employee_id, first_name, last_name, department, salary, joining_date, age)
FROM'‪D:\employee_data.csv'
DELIMITER',' 
CSV HEADER;

每次执行都会触发如下错误:

ERROR: could not open file "‪D:\employee_data.csv" for reading: No such file or directory
HINT: COPY FROM instructs the PostgreSQL server process to read a file. You may want a client-side facility such as psql's \copy.

SQL state: 58P01

可能的原因

  • 服务进程权限不足:PostgreSQL服务默认以本地系统账户(postgres用户)运行,该账户可能没有读取D:\employee_data.csv的权限——比如文件存放在加密文件夹、个人用户专属目录,或者文件权限设置了仅当前用户可访问。
  • 路径格式存在问题:
    • SQL中反斜杠\是转义字符,单反斜杠会被解析错误,需改为双反斜杠\\(如'D:\\employee_data.csv')或正斜杠/(如'D:/employee_data.csv')
    • 路径开头包含不可见特殊字符:从报错信息的文件名能看出,路径字符串前有隐藏的Unicode字符,这大概率是复制路径时附带的,导致系统无法识别正确路径
  • COPY命令的执行逻辑限制:COPY FROM是让PostgreSQL服务器端进程读取文件,而非客户端。即便你是本地连接,服务进程的权限与当前登录用户完全独立。如果要导入客户端侧的文件,更适合用pgAdmin自带的「导入/导出数据」向导,或者psql的\copy命令(客户端侧执行)
  • 文件实际位置或名称不符:确认文件确实存放在D:\根目录,且文件名完全匹配(包括大小写,Windows虽不区分,但路径转义或特殊字符问题可能导致匹配失败)

内容的提问来源于stack exchange,提问作者Muhammad Qasim Ghouri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 16:20:11