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

如何通过URI连接的命令行方式将SQL文件导入PostgreSQL数据库?

解决PostgreSQL URI连接下导入SQL脚本的问题

可行方案

方案1:通过-d指定URI并配合-f导入文件

将连接URI通过-d参数传递,同时用-f指定要执行的SQL脚本路径,命令格式如下:

C:\PROGRA~1\PostgreSQL\15.2\bin\psql.exe -d "postgres://mydbadmin:mydbadminpasswd@localhost:5432/mydb" -f "%cd%\myscript.sql"

方案2:通过-d指定URI并配合-c执行\i命令

如果偏好使用\i命令加载脚本,同样用-d指定URI,再通过-c传递执行命令:

C:\PROGRA~1\PostgreSQL\15.2\bin\psql.exe -d "postgres://mydbadmin:mydbadminpasswd@localhost:5432/mydb" -c "\i %cd%\myscript.sql"

方案3:修复管道命令的路径格式

Windows批处理中建议使用反斜杠\作为路径分隔符,同时给路径加上引号避免空格问题,修正后的管道命令:

type "%cd%\myscript.sql" | C:\PROGRA~1\PostgreSQL\15.2\bin\psql.exe "postgres://mydbadmin:mydbadminpasswd@localhost:5432/mydb"

额外注意事项

你的示例INSERT语句中,列列表重复定义了user_id字段,执行时会触发语法错误,需要删除其中一个重复项,修正后的SQL:

-- User
INSERT INTO users (user_id, credit, email, passwd, alias_login) 
VALUES (1, 250, 'test@test.com', '123456', '1111');

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 14:57:21