5
0
mirror of https://github.com/apache/sqoop.git synced 2025-05-03 16:40:21 +08:00

SQOOP-353 Cleanup the if/else statement in HiveTypes

git-svn-id: https://svn.apache.org/repos/asf/incubator/sqoop/trunk@1186537 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Bilung Lee 2011-10-19 22:18:32 +00:00
parent 94b5182efe
commit 0028a8aebf

View File

@ -40,58 +40,40 @@ private HiveTypes() {
* mapping to a Hive-specific type? * mapping to a Hive-specific type?
*/ */
public static String toHiveType(int sqlType) { public static String toHiveType(int sqlType) {
if (sqlType == Types.INTEGER) {
return "INT"; switch (sqlType) {
} else if (sqlType == Types.VARCHAR) { case Types.INTEGER:
return "STRING"; case Types.SMALLINT:
} else if (sqlType == Types.CHAR) { return "INT";
return "STRING"; case Types.VARCHAR:
} else if (sqlType == Types.LONGVARCHAR) { case Types.CHAR:
return "STRING"; case Types.LONGVARCHAR:
} else if (sqlType == Types.NVARCHAR) { case Types.NVARCHAR:
return "STRING"; case Types.NCHAR:
} else if (sqlType == Types.NCHAR) { case Types.LONGNVARCHAR:
return "STRING"; case Types.DATE:
} else if (sqlType == Types.LONGNVARCHAR) { case Types.TIME:
return "STRING"; case Types.TIMESTAMP:
} else if (sqlType == Types.NUMERIC) { case Types.CLOB:
// Per suggestion on hive-user, this is converted to DOUBLE for now. return "STRING";
return "DOUBLE"; case Types.NUMERIC:
} else if (sqlType == Types.DECIMAL) { case Types.DECIMAL:
// Per suggestion on hive-user, this is converted to DOUBLE for now. case Types.FLOAT:
return "DOUBLE"; case Types.DOUBLE:
} else if (sqlType == Types.BIT) { case Types.REAL:
return "BOOLEAN"; return "DOUBLE";
} else if (sqlType == Types.BOOLEAN) { case Types.BIT:
return "BOOLEAN"; case Types.BOOLEAN:
} else if (sqlType == Types.TINYINT) { return "BOOLEAN";
return "TINYINT"; case Types.TINYINT:
} else if (sqlType == Types.SMALLINT) { return "TINYINT";
return "INT"; case Types.BIGINT:
} else if (sqlType == Types.BIGINT) { return "BIGINT";
return "BIGINT"; default:
} else if (sqlType == Types.REAL) { // TODO(aaron): Support BINARY, VARBINARY, LONGVARBINARY, DISTINCT,
return "DOUBLE"; // BLOB, ARRAY, STRUCT, REF, JAVA_OBJECT.
} else if (sqlType == Types.FLOAT) { return null;
return "DOUBLE"; }
} else if (sqlType == Types.DOUBLE) {
return "DOUBLE";
} else if (sqlType == Types.DATE) {
// unfortunate type coercion
return "STRING";
} else if (sqlType == Types.TIME) {
// unfortunate type coercion
return "STRING";
} else if (sqlType == Types.TIMESTAMP) {
// unfortunate type coercion
return "STRING";
} else if (sqlType == Types.CLOB) {
return "STRING";
} else {
// TODO(aaron): Support BINARY, VARBINARY, LONGVARBINARY, DISTINCT,
// BLOB, ARRAY, STRUCT, REF, JAVA_OBJECT.
return null;
}
} }
/** /**