使用liquibase为H2创建触发器

时间:2019-06-26 14:01:11

标签: triggers jhipster h2 liquibase

我正在使用JHipster,正在尝试更新表并使用liquibase添加触发器。运行服务时使用的DB是postgres,但是运行测试时jhipster使用H2。使用以下代码,postgres一切正常,而H2则不行

<changeSet id="1" author="jhipster" runOnChange="true">
        <createProcedure>
            CREATE TRIGGER date_trigger_set
            BEFORE update
            ON alert
            FOR EACH ROW
            BEGIN
                NEW.updated_at = NOW();
            END;
        </createProcedure>
        <rollback>
            drop trigger date_trigger_set
        </rollback>
</changeSet>

对于H2,运行测试时,我得到:

java.lang.IllegalStateException
        Caused by: org.springframework.beans.factory.BeanCreationException
            Caused by: liquibase.exception.MigrationFailedException
                Caused by: liquibase.exception.DatabaseException
                    Caused by: org.h2.jdbc.JdbcSQLException

是否可以使用liquibase为H2创建触发器?我在做错什么吗?

谢谢

0 个答案:

没有答案