我是 Web 开发新手,正在全栈节点、react、express、postgreSQL 应用程序上运行。到目前为止,我完成的所有教程和我找到的文档都讨论了使用单个 .sql 文件。但是我想您会在大型应用程序中使用多个?
例如,在 Facebook 克隆的小型版本中,我认为您应该为用户、帖子、组等创建一个单独的 .sql...将所有内容都集中到一个文件中似乎是一团糟,哈哈.
如果需要多个文件,我想知道如何启动这些文件。你仍然使用一个数据库名称但使用多个sql文件吗?我发现的最接近的是如下所示:
// Initiate your database in a bash script
database="appdb"
dropdb -U node_user appdb
createdb -U node_user appdb
// Initiate sql files, something like this?
psql -U node_user "BEGIN;" \i file1.sql \i file2.sql "COMMIT;"
// Or iterate through the .sql files?
for file in dir/*.sql
do sudo -u postgres psql $DATABASE_NAME -f $file
done
想知道其中任何一个是否正确以及是否有执行此操作的标准方法。如有任何想法和/或进一步阅读 Material ,我们将不胜感激。
非常感谢
最佳答案
如果您想在单个事务中运行多个脚本,请使用
psql -U node_user -d "$database" --single-transaction -f file1.sql -f file2.sql
关于sql - 如何使用postgreSQL初始化多个sql文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67630053/