当前位置: 首页 > 知识库问答 >
问题:

无前提条件液基转换

璩慎之
2023-03-14

当我们没有在变更集中添加前置条件并运行它两次时,会发生什么?默认情况下会标记为ran吗?例如,这是变更集:

<changeSet id="xxx" author="kurkesh">

    <createProcedure>DO $$ BEGIN
        CREATE TYPE enum_mobile AS ENUM('ANDROID', 'IOS', 'WINDOWS');
        EXCEPTION
        WHEN duplicate_object THEN null;
        END $$;
    </createProcedure>
</changeset>

共有1个答案

慕凡
2023-03-14

是的,您的变更集将被标记为已执行,并且不会再次执行。

当您第一次执行变更集时,Liquibase在DatabaseChangelog表中记录id为“XXX”的变更集已成功运行。

当您尝试第二次执行这个变更集时,Liquibase将检查DatabaseChangelog表。如果有关于变更集“XXX”的记录(它已成功执行),那么这个变更集将被忽略,并且不会执行第二次。

 类似资料:
  • 前提条件提供静态方法来检查是否使用适当的参数调用方法或构造函数。 它检查前提条件。 它的方法在失败时抛出IllegalArgumentException。 Class 声明 (Class Declaration) 以下是com.google.common.base.Preconditions类的声明 - @GwtCompatible public final class Preconditions

  • 难道没有任何工具或命令行可以自动创建changelog文件吗?我使用的JHipster可以正确地为新实体创建changelogs,但正如这里所说的,JHipster不会为更新的实体生成新的changelogs,所以我想知道它们是否是生成额外changelogs的工具?实际上,我是通过手工编写xml文件来创建changelogs,这似乎并不是非常高效。 谢谢你的阅读。

  • 本文向大家介绍如何在黄瓜中运行前提条件和前提条件测试方法?,包括了如何在黄瓜中运行前提条件和前提条件测试方法?的使用技巧和注意事项,需要的朋友参考一下 我们可以在Cucumber中的@Before和@After挂钩的帮助下运行前置条件和后置条件测试方法。 示例 功能文件。 步骤定义具有带有钩子@Before和@After的方法。带有钩子@Before的测试方法将作为前提条件执行,然后将运行测试方法

  • 尽管我提出了问题https://github.com/spring-projects/spring-boot/issues/662为了提供一个spring boot starter liquibase starter模块,今天我发现已经有了某种集成。 Spring Boot已经包含https://github . com/spring-projects/spring-boot/tree/maste

  • 我有一个Spring batch step reader,其中的查询很复杂,包含几个表的join。作业将每天运行,根据上次更新的日期查找添加到表A中的记录。在没有添加记录的情况下,查询返回结果仍然需要很长时间。我想检查是否有任何记录被添加到表A中,然后才运行完整的查询。示例:从表A中选择count(recordID),其中last_update_date>,如果count>0,则继续加入其他表的步

  • 问题内容: 我想检查基类上的前提条件,以便知道子类型将始终使用有效的构造函数参数。 让我们以一个构造器为例: 接受2个或更多参数 接受不同类型的参数 对于一个参数,它执行多次检查(例如,String不为null 并且 不为空) 在这种情况下,如何最好地使用番石榴前提条件方法? 在这样的模拟示例中:(这是人为的!) 我最终在检查参数之前先进行了调用,因为对to的调用必须是方法的第一行,尽管可以这样做