当我试图创建它总是在数据库中作为“WITH TIME ZONE TIMESTAMP”创建PostgreSQL中的数据类型“TIMESTAMP无时间ZONE”一栏,所以是有这个问题的任何变通办法或解决方案?
<addColumn tableName="myTable">
<column name="date_added" type="TIMESTAMP WITHOUT TIME ZONE">
<constraints nullable="false" />
</column>
</addColumn>
顺便说一句,这个问题是JIRA:http://liquibase.jira.com/browse/CORE-877
阅读此页http://www.liquibase.org/documentation/sql_format.html。只是在SQL需要手动键入你到底怎么想的那样,如果您使用的Liquibase SQL格式。
而不是使用标签和XML完全切换到SQL的,你可以使用它是在整个变更有效的标签修改结果生成的SQL:http://www.liquibase.org/documentation/modify_sql.html
例如,在你的情况,你会拥有这样的:
<modifySql dbms="postgresql">
<replace replace="WITH" with="WITHOUT"/>
</modifySql>
你可以使用<SQL>标签来创建,如果liquibase正在生成错误的SQL你你想要的确切SQL。
除了@magomarcelo你也可以写modifysql为YAML。下面的示例中的PostgreSQL忽略无符号:
- modifySql:
dbms: postgresql
replace:
replace: unsigned
with: default 0