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

Windows10下PostgreSQL执行\i命令导入SQL文件报Permission Denied或不存在

Windows 10 环境 PostgreSQL \i 命令导入SQL文件报错解决方案

报错根因说明

  • 加引号找不到文件:单引号包裹的路径中,\p未做转义处理,G:\\postgres\person.sql被psql解析为G:/postgresperson.sql,路径中的反斜杠被转义吞掉,导致无法匹配到实际文件
  • 不加引号报权限错误:psql解析无引号的Windows路径时,会将盘符后的冒号识别为参数分隔符,错误尝试访问G盘根目录触发权限报错,并非真的缺少文件访问权限

解决方案

方案1:使用正斜杠替换反斜杠(推荐)

psql在Windows环境下原生支持正斜杠格式的路径,无需处理转义,执行以下命令即可:

\i G:/postgres/person.sql

方案2:全路径反斜杠双重转义

如果需要使用反斜杠格式的路径,需要对所有反斜杠做双重转义后用单引号包裹:

\i 'G:\\postgres\\person.sql'

注意person.sql前的反斜杠也需要替换为\\,否则仍会出现转义错误。

方案3:先切换工作目录再导入

避免全路径转义问题,先切换到SQL文件所在目录后直接导入文件名:

  • 执行切换工作目录命令:\cd G:\postgres
  • 直接执行导入命令:\i person.sql

验证操作

导入前可执行\! dir G:\postgres\person.sql,确认psql可以正常识别到目标文件,再执行导入操作。
如果以上操作仍报错,可检查PostgreSQL服务的运行账户,确认该账户拥有目标文件夹的读取权限,而非仅配置当前登录用户的Everyone权限。

内容的提问来源于stack exchange,提问作者Auvee

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 16:39:04