我试图在cmd提示符下运行此语句,以便可以在数据库上执行sql脚本。
"C:\Users\Name\Desktop\psql.exe" -U someUsername -h localhost someDbName -f "C:\Users\Name\Desktop\script.sql"
但是,我得到了错误消息:
psql:警告:多余的命令行参数“ -f”被忽略
psql:警告:额外的命令行参数 “ C:\ Users \ Name \ Desktop \ script.sql”被忽略
所有这些都是新手,因此将不胜感激!
答案 0 :(得分:2)
如果输入psql --help
,则会看到以下摘要:
Usage:
psql [OPTION]... [DBNAME [USERNAME]]
这意味着数据库名称必须在所有“选项”之后,或者必须作为选项传递(使用-d
)
所以:
psql.exe -U someUsername -h localhost -d someDbName -f "C:\Users\Name\Desktop\script.sql"
或
psql.exe -U someUsername -h localhost -f "C:\Users\Name\Desktop\script.sql" someDbName
答案 1 :(得分:1)
这是我的解决方法!
@ECHO OFF
set PGPASSWORD=postgres
psql -U postgres -f "C:\Users\projects\Project\drop_create_db.sql" -d postgres