序号 | 数据库类型 | Java类型 | JDBC索引 | JDBC类型 |
---|---|---|---|---|
1 | varchar | java.lang.String | 12 | VARCHAR |
2 | char | java.lang.String | 1 | CHAR |
3 | cidr | java.lang.Object | 1111 | OTHER |
4 | inet | java.lang.Object | 1111 | OTHER |
5 | macaddr | java.lang.Object | 1111 | OTHER |
6 | text | java.lang.String | 12 | VARCHAR |
7 | int8 | java.lang.Long | -5 | BIGINT |
8 | bytea | byte | -2 | BINARY |
9 | box | java.lang.Object | 1111 | OTHER |
10 | circle | java.lang.Object | 1111 | OTHER |
11 | float8 | java.lang.Double | 8 | DOUBLE |
12 | int4 | java.lang.Integer | 4 | INTEGER |
13 | interval | java.lang.Object | 1111 | OTHER |
14 | line | java.lang.Object | 1111 | OTHER |
15 | lseg | java.lang.Object | 1111 | OTHER |
16 | money | java.lang.Double | 8 | DOUBLE |
17 | numeric | java.math.BigDecimal | 2 | NUMERIC |
18 | path | java.lang.Object | 1111 | OTHER |
19 | point | java.lang.Object | 1111 | OTHER |
20 | polygon | java.lang.Object | 1111 | OTHER |
21 | float4 | java.lang.Float | 7 | REAL |
22 | int2 | java.lang.Integer | 5 | SMALLINT |
23 | time | java.sql.Time | 92 | TIME |
24 | timestamp | java.sql.Timestamp | 93 | TIMESTAMP |
25 | bit | java.lang.Boolean | -7 | BIT |
26 | varbit | java.lang.Object | 1111 | OTHER |
27 | bool | java.lang.Boolean | -7 | BIT |
JdbcType
public enum JdbcType {
/*
* This is added to enable basic support for the
* ARRAY data type - but a custom type handler is still required
*/
ARRAY(Types.ARRAY),
BIT(Types.BIT),
TINYINT(Types.TINYINT),
SMALLINT(Types.SMALLINT),
INTEGER(Types.INTEGER),
BIGINT(Types.BIGINT),
FLOAT(Types.FLOAT),
REAL(Types.REAL),
DOUBLE(Types.DOUBLE),
NUMERIC(Types.NUMERIC),
DECIMAL(Types.DECIMAL),
CHAR(Types.CHAR),
VARCHAR(Types.VARCHAR),
LONGVARCHAR(Types.LONGVARCHAR),
DATE(Types.DATE),
TIME(Types.TIME),
TIMESTAMP(Types.TIMESTAMP),
BINARY(Types.BINARY),
VARBINARY(Types.VARBINARY),
LONGVARBINARY(Types.LONGVARBINARY),
NULL(Types.NULL),
OTHER(Types.OTHER),
BLOB(Types.BLOB),
CLOB(Types.CLOB),
BOOLEAN(Types.BOOLEAN),
CURSOR(-10), // Oracle
UNDEFINED(Integer.MIN_VALUE + 1000),
NVARCHAR(Types.NVARCHAR), // JDK6
NCHAR(Types.NCHAR), // JDK6
NCLOB(Types.NCLOB), // JDK6
STRUCT(Types.STRUCT),
JAVA_OBJECT(Types.JAVA_OBJECT),
DISTINCT(Types.DISTINCT),
REF(Types.REF),
DATALINK(Types.DATALINK),
ROWID(Types.ROWID), // JDK6
LONGNVARCHAR(Types.LONGNVARCHAR), // JDK6
SQLXML(Types.SQLXML), // JDK6
DATETIMEOFFSET(-155); // SQL Server 2008
public final int TYPE_CODE;
private static Map codeLookup = new HashMap();
static {
for (JdbcType type : JdbcType.values()) {
codeLookup.put(type.TYPE_CODE, type);
}
}
JdbcType(int code) {
this.TYPE_CODE = code;
}
public static JdbcType forCode(int code) {
return codeLookup.get(code);
}
}
Types
/** *
The class that defines the constants that are used to identify generic * SQL types, called JDBC types. *
* This class is never instantiated. */ public class Types { /** *
The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
BIT
. */ public final static int BIT = -7; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
TINYINT
. */ public final static int TINYINT = -6; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
SMALLINT
. */ public final static int SMALLINT = 5; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
INTEGER
. */ public final static int INTEGER = 4; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
BIGINT
. */ public final static int BIGINT = -5; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
FLOAT
. */ public final static int FLOAT = 6; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
REAL
. */ public final static int REAL = 7; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
DOUBLE
. */ public final static int DOUBLE = 8; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
NUMERIC
. */ public final static int NUMERIC = 2; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
DECIMAL
. */ public final static int DECIMAL = 3; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
CHAR
. */ public final static int CHAR = 1; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
VARCHAR
. */ public final static int VARCHAR = 12; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
LONGVARCHAR
. */ public final static int LONGVARCHAR = -1; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
DATE
. */ public final static int DATE = 91; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
TIME
. */ public final static int TIME = 92; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
TIMESTAMP
. */ public final static int TIMESTAMP = 93; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
BINARY
. */ public final static int BINARY = -2; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
VARBINARY
. */ public final static int VARBINARY = -3; /** *The constant in the Java programming language, sometimes referred * to as a type code, that identifies the generic SQL type *
LONGVARBINARY
. */ public final static int LONGVARBINARY = -4; /** *
The constant in the Java programming language * that identifies the generic SQL value *
NULL
. */ public final static int NULL = 0; /** * The constant in the Java programming language that indicates * that the SQL type is database-specific and * gets mapped to a Java object that can be accessed via * the methodsgetObject
andsetObject
. */ public final static int OTHER = 1111; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *JAVA_OBJECT
. * @since 1.2 */ public final static int JAVA_OBJECT = 2000; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *DISTINCT
. * @since 1.2 */ public final static int DISTINCT = 2001; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *STRUCT
. * @since 1.2 */ public final static int STRUCT = 2002; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *ARRAY
. * @since 1.2 */ public final static int ARRAY = 2003; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *BLOB
. * @since 1.2 */ public final static int BLOB = 2004; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *CLOB
. * @since 1.2 */ public final static int CLOB = 2005; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type *REF
. * @since 1.2 */ public final static int REF = 2006; /** * The constant in the Java programming language, somtimes referred to * as a type code, that identifies the generic SQL typeDATALINK
. * * @since 1.4 */ public final static int DATALINK = 70; /** * The constant in the Java programming language, somtimes referred to * as a type code, that identifies the generic SQL typeBOOLEAN
. * * @since 1.4 */ public final static int BOOLEAN = 16; //------------------------- JDBC 4.0 ----------------------------------- /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL typeROWID
* * @since 1.6 * */ public final static int ROWID = -8; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL typeNCHAR
* * @since 1.6 */ public static final int NCHAR = -15; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL typeNVARCHAR
. * * @since 1.6 */ public static final int NVARCHAR = -9; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL typeLONGNVARCHAR
. * * @since 1.6 */ public static final int LONGNVARCHAR = -16; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL typeNCLOB
. * * @since 1.6 */ public static final int NCLOB = 2011; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL typeXML
. * * @since 1.6 */ public static final int SQLXML = 2009; //--------------------------JDBC 4.2 ----------------------------- /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type {@code REF CURSOR}. * * @since 1.8 */ public static final int REF_CURSOR = 2012; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * {@code TIME WITH TIMEZONE}. * * @since 1.8 */ public static final int TIME_WITH_TIMEZONE = 2013; /** * The constant in the Java programming language, sometimes referred to * as a type code, that identifies the generic SQL type * {@code TIMESTAMP WITH TIMEZONE}. * * @since 1.8 */ public static final int TIMESTAMP_WITH_TIMEZONE = 2014; // Prevent instantiation private Types() {} }