in empire-db/src/main/java/org/apache/empire/db/validation/DBModelParser.java [566:624]
protected DataType getEmpireDataType(int sqlType)
{
DataType empireType = DataType.UNKNOWN;
switch (sqlType)
{
case Types.INTEGER:
case Types.SMALLINT:
case Types.TINYINT:
case Types.BIGINT:
empireType = DataType.INTEGER;
break;
case Types.VARCHAR:
case Types.NVARCHAR:
empireType = DataType.VARCHAR;
break;
case Types.DATE:
empireType = DataType.DATE;
break;
case Types.TIME:
empireType = DataType.TIME;
break;
case Types.TIMESTAMP:
empireType = DataType.DATETIME;
break;
case Types.CHAR:
case Types.NCHAR:
empireType = DataType.CHAR;
break;
case Types.DOUBLE:
case Types.FLOAT:
case Types.REAL:
empireType = DataType.FLOAT;
break;
case Types.DECIMAL:
case Types.NUMERIC:
empireType = DataType.DECIMAL;
break;
case Types.BIT:
case Types.BOOLEAN:
empireType = DataType.BOOL;
break;
case Types.CLOB:
case Types.LONGVARCHAR:
case Types.LONGNVARCHAR:
empireType = DataType.CLOB;
break;
case Types.BINARY:
case Types.VARBINARY:
case Types.LONGVARBINARY:
case Types.BLOB:
empireType = DataType.BLOB;
break;
default:
empireType = DataType.UNKNOWN;
DBModelParser.log.warn("SQL column type " + sqlType + " not supported.");
}
DBModelParser.log.debug("Mapping date type " + String.valueOf(sqlType) + " to " + empireType);
return empireType;
}