表依赖关系和Flyway

问题描述 投票:0回答:1

我有带有子表的父表(这取决于父表)。是否需要为每个子表和父表创建一个SQL文件?或者拥有一个包含父表及其所有子表的 .sql 文件?

如果我将所有建表语句都包含在一个SQL文件中,如果其中任何一个建表语句失败,那么该SQL文件中所有成功的建表语句都会回滚吗?

sql flyway rollback
1个回答
0
投票

至于回滚什么实际上取决于相关的数据库系统。

是的,将所有表放入一个脚本中意味着,再次,当失败时,所有表都将回滚。但是,您也可以将事务投入工作,这将允许您回滚多个脚本中的行为集,就像单个脚本中的多个语句一样。

简而言之,两种方法都可以。一般来说,如果您将这些表部署为一项功能,我会说。假设您的应用程序版本为 1.1.1.42。然后它们在一个更改脚本中组合在一起,您可以在部署失败时处理回滚(测试是您的朋友)。

© www.soinside.com 2019 - 2024. All rights reserved.