如果使用heroku pg:psql -a appname
远程访问heroku上的postgres数据库,我可以等待几秒钟使其连接,然后运行\copy (SELECT * FROM users) TO users.csv CSV DELIMITER ',' HEADER
将表从远程数据库提取到我的桌面。
但是,如果我将这两行代码放入.bat文件中并运行它,它将打开cmd.exe并连接到postgres数据库(如预期的那样),但是什么也没发生(不再执行任何代码)< / p>
如何构造.bat文件,使其运行第一行(以连接到远程数据库),然后在远程连接的数据库内执行后续的行?
答案 0 :(得分:1)
您必须使用-c开关将命令传递给psql。
psql -c "\copy (SELECT * FROM users) TO users.csv CSV DELIMITER ',' HEADER"
如果需要执行更多命令,将它们放在单独的文件中,然后使用-f开关将其传递给psql会更容易。