Liquibase 3.3.x data types mapping table

data type mapping smallRecently, I have used Liquibase in one of my projects and I have needed to create a boolean column. I have wondered what data type will the column have in my database. SQL Server has bit data type but does Liquibase takes advantage of it? And Oracle? What column will be created there?

I tried to find an answer to my questions in Liquibase documentation but I have found nothing there. Fortunately, Liquibase source code is available on the internet so I reviewed it and gathered data type mappings for SQL Server and Oracle. If you are looking for this information, enjoy!

Data types mapping in Liquibase 3.3.x

Liquibase data type SQL Server data type Oracle data type
bigint bigint number(38,0)
blob varbinary(max) blob
boolean bit number(1)
char char char
clob nvarchar(max) clob
currency money number(15,2)
datetime smalldatetime or datetime2 timestamp
date date or smalldatetime (version <= 2005) date
decimal decimal decimal
double float float(24)
float float float
int int number(10)
mediumint mediumint mediumint
nchar nchar nchar
nvarchar nvarchar nvarchar2
number numeric number
smallint smallint number(5)
time time or datetime (version <= 2005) date
timestamp datetime timestamp
tinyint tinyint number(3)
uuid uniqueidentifier raw(16)
varchar varchar varchar2 

For other Liquibase articles, please read:

Database versioning - theory [video]

Database versioning part 2 - Liquibase - how to use [video]