使用Liquibase添加创建日期 - 数据库不可知

时间:2015-01-05 17:14:34

标签: mysql oracle liquibase database-administration

我正在使用Liquibase删除特定行(如果存在)。

对于潜在的回滚,我想重新插入行。其中一列是CREATEDATE,基本上是当前时间。

由于业务原因,我不能假设运行的数据库是Oracle或mySQL数据库。

有没有办法可以通过使用服务器时间或包括oracle和mySQL值来插入当前日期?

目前我有

  <!-- NOW = CREATE_DATE FOR ROLLBACK -->  
  <property name="now" value="sysdate" dbms="oracle"/>
  <property name="now" value="now()" dbms="mysql"/>

并在回滚中

<column name="CREATEDATE" valueDate="${now}" />

这总是默认为mySQL时间吗?它会根据使用的DBMS给出一个值吗?

理想情况下,我宁愿使用服务器时间。

1 个答案:

答案 0 :(得分:1)

Liquibase应该转换字符串&#34; current_datetime&#34;在valueDate标记中,它是特定于数据库的当前时间函数,无需任何其他配置。

然而,Current_datetime将与您当前的设置基本相同。在这两种情况下,保存的日期/时间将是服务器时间而不是客户端时间。