Hello,
I am facing a problem related to liquibase.convertDataTypes:
I set
liquibase.convertDataTypes: false
in the liquibase.properties file and the setting seems to be accepted correclty.
I have a liquibase xml script aimed to create a table containing also a “datetime” field in SQLite.
<column name="eventDate" type="${datetime}"><constraints nullable="false"/></column>
In the databasechangelog file there is a setting for property substitution:
<property dbms="sqlite" name="datetime" value="DATETIME"/>
With this setup I would expect that the SQL generated by liquibase is simply
eventDate DATETIME NOT NULL,
while is
eventDate TEXT NOT NULL,
;
What am I doing wrong?
Liquibase version is: 4.16.1
Important note: I know that DATETIME “doesn’t exist” in SQLite, but it is possible to create tables using this type name, and after SQLite engine does the conversion using the type affinity (Datatypes In SQLite, 3.3.1 Affinity Name Examples).
Another note: I see in the liquibase logs that only when db is sqlserver there is a line in the log telling that liquibase.convertDataTypes has found to be set to false, and this make me suspect that liquibase.convertDataTypes is ignored when db is not SQLServer. Possible?
Thanks