JDBC Data Types Mapping

The following table shows the mapping between Okera and JDBC source data types.

Okera MySQL PostgreSQL Snowflake Redshift AWS Athena SQL Server Sybase Oracle
boolean BOOL, BOOLEAN BOOL, BOOLEAN, BIT BOOL, BOOLEAN BOOL, BOOLEAN BOOLEAN BOOLEAN
tinyint TINYINT TINYINT TINYINT TINYINT
smallint SMALLINT SMALLINT SMALLINT, INT2 SMALLINT SMALLINT SMALLINT
int MEDIUMINT, INT INT, SERIAL INTEGER, INT, INT4 INT INT INT
bigint BIGINT BIGINT, BIGSERIAL SMALLINT, INT, INTEGER, BIGINT, NUMBER BIGINT, INT8 BIGINT BIGINT BIGINT TINYINT, SMALLINT, INT, INTEGER, BIGINT, NUMBER
double DOUBLE DOUBLE, MONEY, REAL DOUBLE, REAL DOUBLE, FLOAT8, FLOAT, REAL, FLOAT4 DOUBLE REAL REAL REAL
decimal(p,s) FLOAT(p,s), decimal(p,s) NUMERIC(p,s), DECIMAL(p,s) NUMERIC(p,s), DECIMAL(p,s) DECIMAL(p,s), NUMERIC DECIMAL(p,s) DECIMAL(p,s) DECIMAL(p,s) DECIMAL(p,s), NUMERIC(p,s)
char(N) CHAR(N) CHAR(N) CHAR, CHARACTER, NCHAR, BPCHAR CHAR CHAR(N) CHAR(N) char(N)
char(2) ENUM
char(6) SET
varchar(N) VARCHAR(N) VARCHAR(N) CHAR(N), VARCHAR(N) CHARACTER VARYING, NVARCHAR, TEXT VARCHAR VARCHAR(N) VARCHAR(N) VARCHAR(N)
varchar(255) TINYTEXT STRING
varchar(65355) TEXT
string MEDIUMTEXT, LONGTEXT, BLOB, TINYBLOB, MEDIUMBLOB, LONGBLOB, BINARY(N), VARBINARY(N) TEXT STRING, TEXT, BINARY(N), VARBINARY(N) TEXT, TIMESTAMP, BINARY(N), VARBINARY(N) TEXT, TIMESTAMP, BINARY(N), VARBINARY(N)
timestamp TIMESTAMP, TIME, DATETIME TIMESTAMP TIMESTAMP TIMESTAMP TIMESTAMP DATETIME DATETIME TIMESTAMP
date DATE DATE DATE DATE DATE DATE DATE DATE

Starting from Okera version 2.1.0, Decimals/Numeric types without a p/s or > 38 precision are capped at 38(p) at Okera. If scale is not specified in the source JDBC data source, a default of 6(s) is considered to avoid scale loss

Unsupported MySQL types: YEAR

Unsupported PostgreSQL types: JSON, TIME, UUID and XML

Unsupported Snowflake types: TIME, VARIANT, OBJECT and ARRAY