11 如何在Postgres中的单个sql文件中调用多个sql文件 例如我有aaa.sql,bbb.sql,ccc.sql。 我想从xxx.sql执行这3个文件。 谁能建议我该怎么做。 postgresql — 行程 source
12 如果psql要通过\i指令运行这些文件(“从文件执行命令”)。 xxx.sql: \i aaa.sql \i bbb.sql \i ccc.sql 如果要通过其他程序传递这些文件,则需要自己组合文件-我认为没有任何SQL标准的执行外部文件的方法。 — voretaq7 source 感谢您的答复。我将测试并确认我是否能够达到目标 — 2012年 看起来还没有工作还不确定我是否缺少某些东西。我到底需要半冒号吗???-并不是的 !!! — 2012年 1 您需要比“不起作用”更具体-我向您保证这确实起作用-请参阅psql手册 — voretaq7 有效。最后:-) Thanku问题是-它无法识别文件,并且O指定了文件及其工作的相对路径,再次感谢您 — 2012年 @Trip Trip,别忘了感谢voretaq的回答! — 理查德T
4 并非完全符合您的要求,但可以满足您的目的:1)将所有脚本文件放在一个文件夹中;和2)使用bash脚本遍历文件并运行psql。例如: SCRIPTS_DIR=/home/myproject/scripts DATABASE_NAME=database_name for file in $SCRIPTS_DIR/*.sql do sudo -u postgres psql $DATABASE_NAME -f $file done 实际上,这要好一些,因为您不必键入文件名。 — 穆罕默德 source
3 在bash shell上,您也可以使用 find -exec find sql/ -name *.sql -exec psql -U user -f {} \; — 潘奇兹 source 要求您使用"*.sql"而不是*.sql — Jeel Shah