在 psql 中运行 .sql 文件时访问被拒绝

问题描述 投票:0回答:1

当我尝试在 psql shell(windows) 中运行 .sql 文件时遇到问题

我的代码:

tpchr=> \i 'C:/Users/kyyy/Desktop/ts/dbLoadTPCHR.sql'

我收到错误提示:

psql:C:/Users/kyyy/Desktop/ts/dbLoadTPCHR.sql:1: 
ERROR:  could not open file "C:/Users/kyyy/Desktop/ts/supplier.csv" for reading: Permission denied 
psql:C:/Users/kyyy/Desktop/ts/dbLoadTPCHR.sql:3: 
ERROR:  could not open file "C://Users/kyyy/Desktop/ts/part.csv" for reading: Permission denied

dbLoadTPCHR.sql
包含存储在同一位置的
supplier.csv
part.csv
的路径。

我正在尝试将 .sql 文件加载到表中,因为 csv 文件包含插入表中所需的信息。

postgresql windows psql access-denied
1个回答
0
投票

我也遇到过类似的问题,我建议尝试以下步骤,按重要性顺序列出,希望其中一个能起作用:

  1. 检查文件权限:确保 CSV 文件不是只读的,并且 PostgreSQL 用户具有读取权限。 右键单击文件,选择属性,然后检查权限。
  2. 尝试使用 \COPY:在客户端使用 \COPY 而不是 COPY 执行。
  3. 检查 PostgreSQL 服务用户:验证 PostgreSQL 服务在有权访问 CSV 文件的用户下运行。
  4. 使用管理员权限打开 psql(如果您还没有):运行命令提示符或 在启动 psql 之前以管理员身份使用 PowerShell。
  5. 检查路径:确保路径和文件名正确并使用 适当的路径分隔符
    (/ or \\)
    .
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.