jdbc与java类型匹配
CHAR
、VARCHAR
和 LONGVARCHAR
可映射为 String
或 char[]
,但 String
更适合于一般用法。
在 Java 中,BINARY
、VARBINARY
和 LONGVARBINARY
都可用同一 byte
数组来表示。
JDBC BIT
类型的 Java 映射的推荐类型是 Java 布尔型。
JDBC TINYINT
类型的 Java 映射的推荐类型是 Java byte
或 Java short
。
JDBC SMALLINT
类型的 Java 映射的推荐类型是 Java short
类型。
INTEGER
类型 Java 映射的推荐类型是 Java int
类型。
BIGINT
类型的 Java 映射的推荐类型是 Java long 类型。
REAL
类型的 Java 映射的推荐类型为 Java float
类型。
DOUBLE
类型的 Java 映射的推荐类型为 Java double
类型。
FLOAT
类型的 Java 映射的推荐类型为 Java double
类型。然而,由于 SQL FLOAT
和单精度的 Java float
类型间可能产生混淆,因此建议 JDBC 程序员通常选用 JDBC DOUBLE
类型而不选用 FLOAT
。
DECIMAL
和 NUMERIC
类型的 Java 映射的推荐类型是 java.math.BigDecimal
由于标准的 Java 类 java.util.Date
并不与这三个 JDBC 日期—时间类型完全匹配(它含有 DATE
和 TIME
的信息但不含纳秒信息),因此 JDBC 定义了三个 java.util.Date
的子类与 SQL 类型对应。它们是:
-
java.sql.Date
,对应于 SQLDATE
信息。java.util.Date
基本类中的小时、分钟和秒都设为 0。java.sql.Time
,对应于 SQLTIME
信息。java.util.Date
基本类中的年、月、日域设为 1970 年 1 月 1 日。这是 Java 纪元的“零”日期。java.sql.Timestamp
,对应于 SQLTIMESTAMP
信息。该类扩展了java.util.Date
,添加了纳秒域。