首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sqitch -单计划行,多个sql文件

Sqitch -单计划行,多个sql文件
EN

Stack Overflow用户
提问于 2022-05-07 18:43:39
回答 2查看 45关注 0票数 1

我希望迁移到sqitch,但是我的团队喜欢他们的迁移作为多个文件。例如,如果我们在同一个jira票据中创建一个外键并创建一个索引,那么我们喜欢PROJ-123-create-fk.sqlPROJ-123-create-index.sql

我想在sqitch.plan文件中保留一个行,这样每个jira票据都对应于一个行。

基本上,除了向sqitch.plan添加行之外,我还能这样做吗?是否有从主sql文件中“包含”其他sql文件的方法?有点像

PROJ-123-main.sql

代码语言:javascript
复制
\include PROJ-123-create-fk.sql
\include PROJ-123-create-index.sql

非常感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-05-07 18:50:28

\ir psql指令为我解决了这个问题。

PROJ-123-deploy.sql

代码语言:javascript
复制
\ir PROJ-123-create-fk.sql
\ir PROJ-123-create-index.sql

如果fk和索引sql文件位于同一个目录中,则将执行它们。

票数 1
EN

Stack Overflow用户

发布于 2022-07-06 11:28:09

由于您希望将其存储为计划文件中的一行,所以它并不完全匹配,但我将解释我们在下面使用的方法。也许有一些地方你想用在它上。

我的团队中也有类似的情况,但是我们使用sqitch tags。应用程序的每个版本对应于一个子任务。每个任务对应一个标签。我们创建的sql文件与子任务的数量一样多。然后,我们将它们组合到一个标记中,该标记使用主任务的名称创建。在我们用于数据库的CI/CD管道中,我们还提供了带有标记的版本之间的转换。我想在这里添加这个方法,以防有人喜欢使用类似的结构。

简单的例子;

让我们安装应用程序的v2.0v2.1需要一个新的表和索引

我们创建两个名为create的子任务,并在名为v2.1的主任务下创建索引

我们创建两个sql文件:app_v2.1_table_create.sql创建一个表,app_v2.1_index_create.sql创建一个索引。

之后,我们创建了一个名为sqitch tagv2.1。注意,它的名称与主要任务相同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72155473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档