我有一个npm的包,我在本地建了几个月。为了使其正常工作,它需要访问PostgreSQL数据库。因此,它最好需要自动运行一个创建数据库和表的脚本。
这可能,如果可能的话,我可以在哪里制作这样的剧本?我想在npm install
运行时尽可能自动化。
答案 0 :(得分:0)
让nmp
调用psql -qAtX -v ON_ERRORS_STOP=1 -f my_script.sql
,如果返回非零,则会出错。它应该像在安装脚本中运行任何其他命令一样。
您最初可以psql
连接到postgres
数据库,然后
CREATE DATABASE mydb;
\c mydb
重新连接到新数据库。但就个人而言,我有一个psql调用创建数据库,然后另一个连接到新数据库。它简化了错误处理。
您可以将postgres实例设置为通过环境变量PGUSER
,PGHOST
,PGDATABASE
等连接(请参阅psql
手册)或通过传递给命令。
psql
默认为当前unix / windows用户帐户的名称(如果未指定)。