【发布时间】:2015-05-02 10:37:08
【问题描述】:
我需要使用 psql -c 命令从命令行执行 postgresql 查询。 对于每个 psql 命令,它都会打开一个新的 tcp 连接以连接到数据库服务器并执行查询,这对于大量查询来说是一种开销。
目前我可以像这样执行单个查询:
psql -U postgres -h <ip_addr> -c "SELECT * FROM xyz_table;"
当我尝试执行如下多个查询时,但只执行了最后一个查询。
psql -U postgres -h <ip_addr> -c "SELECT * FROM xyz_table; SELECT * FROM abc_table;"
谁能帮助我并告诉我正确的方法?
【问题讨论】:
-
两条语句都被执行,但只有最后一条作为结果集返回。查看手册:postgresql.org/docs/current/interactive/app-psql.html
-
谢谢@FrankHeikens!我认为您还应该将其添加为答案(或建议对已接受的答案进行编辑)。最佳答案助长了只处理一个命令的错误信息。
标签: database postgresql shell