数据库类型与java数据类型的对应关系
2018-03-09 17:28
357 查看
数据库类型与java数据类型的对应关系
1. 从 JDBC 类型映射到 Java 类型
JDBC 类型 | Java 类型 |
---|---|
CHAR | String |
VARCHAR | String |
LONGVARCHAR | String |
NUMERIC | java.math.BigDecimal |
DECIMAL | java.math.BigDecimal |
BIT | boolean |
TINYINT | byte |
SMALLINT | short |
INTEGER | int |
BIGINT | long |
REAL | float |
FLOAT | double |
DOUBLE | double |
BINARY | byte[] |
VARBINARY | byte[] |
LONGVARBINARY | byte[] |
DATE | java.sql.Date |
TIME | java.sql.Time |
TIMESTAMP | java.sql.Timestamp |
Java 类型 | JDBC 类型 |
---|---|
String | VARCHAR 或 LONGVARCHAR |
java.math.BigDecimal | NUMERIC |
boolean | BIT |
byte | TINYINT |
short | SMALLINT |
int | INTEGER |
long | BIGINT |
float | REAL |
double | DOUBLE |
byte[] | VARBINARY 或 LONGVARBINARY |
java.sql.Date | DATE |
java.sql.Time | TIME |
java.sql.Timestamp | TIMESTAMP |
VARCHAR,但如果所给的值超出了驱动程序对
VARCHAR值所限定的极限,则将转换为
LONGVARCHAR类型。对
byte[]、
VARBINARY及
LONGVARBINARY值也一样。
3. 从 JDBC 类型到 Java Object 类型的映射
由于 Java 内置类型(例如boolean和
int)不是
Object的子类型,因此对于
getObject/
setObject方法,从 JDBC 类型到 Java object 类型的映射稍有不同。此种映射如下表所示:
JDBC 类型 | Java Object 类型 |
---|---|
CHAR | String |
VARCHAR | String |
LONGVARCHAR | String |
NUMERIC | java.math.BigDecimal |
DECIMAL | java.math.BigDecimal |
BIT | Boolean |
TINYINT | Integer |
SMALLINT | Integer |
INTEGER | Integer |
BIGINT | Long |
REAL | Float |
FLOAT | Double |
DOUBLE | Double |
BINARY | byte[] |
VARBINARY | byte[] |
LONGVARBINARY | byte[] |
DATE | java.sql.Date |
TIME | java.sql.Time |
TIMESTAMP | java.sql.Timestamp |
4. Java Object 类型映射到 JDBC 类型
Java Object 类型 | JDBC 类型 |
---|---|
String | VARCHAR 或 LONGVARCHAR |
java.math.BigDecimal | NUMERIC |
Boolean | BIT |
Integer | INTEGER |
Long | BIGINT |
Float | REAL |
Double | DOUBLE |
byte[] | VARBINARY 或 LONGVARBINARY |
java.sql.Date | DATE |
java.sql.Time | TIME |
java.sql.Timestamp | TIMESTAMP |
String的映射通常为
VARCHAR,但如果所给的值超出了驱动程序对
VARCHAR值所限定的极限值,则将转换为
LONGVARCHAR。对
byte[]、
VARBINARY和
LONGVARBINARY值也一样。
5. 由 setObject 所进行的转换
setObjectT I N Y I N T | S M A L L I N T | I N T E G E R | B I G I N T | R E A L | F L O A T | D O U B L E | D E C I M A L | N U M E R I C | B I T | C H A R | V A R C H A R | L O N G V A R C H A R | B I N A R Y | V A R B I N A R Y | L O N G V A R B I N A R Y | D A T E | T I M E | T I M E S T A M P | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
String | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x |
java.math.BigDecimal | x | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
Boolean | x | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
Integer | x | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
Long | x | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
Float | x | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
Double | x | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
byte[] | x | x | x | ||||||||||||||||
java.sql.Date | x | x | x | x | x | ||||||||||||||
java.sql.Time | x | x | x | x | |||||||||||||||
java.sql.Time- stamp | x | x | x | x | x | x |
6. 由 ResultSet.getXXX 方法检索的 JDBC 类型
"x" 表示该方法可以检索 JDBC 类型。"X" 表示建议使用该方法来检索该 JDBC 类型。T I N Y I N T | S M A L L I N T | I N T E G E R | B I G I N T | R E A L | F L O A T | D O U B L E | D E C I M A L | N U M E R I C | B I T | C H A R | V A R C H A R | L O N G V A R C H A R | B I N A R Y | V A R B I N A R Y | L O N G V A R B I N A R Y | D A T E | T I M E | T I M E S T A M P | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
getByte | X | x | x | x | x | x | x | x | x | x | x | x | x | ||||||
getShort | x | X | x | x | x | x | x | x | x | x | x | x | x | ||||||
getInt | x | x | X | x | x | x | x | x | x | x | x | x | x | ||||||
getLong | x | x | x | X | x | x | x | x | x | x | x | x | x | ||||||
getFloat | x | x | x | x | X | x | x | x | x | x | x | x | x | ||||||
getDouble | x | x | x | x | x | X | X | x | x | x | x | x | x | ||||||
getBigDecimal | x | x | x | x | x | x | x | X | X | x | x | x | x | ||||||
getBoolean | x | x | x | x | x | x | x | x | x | X | x | x | x | ||||||
getString | x | x | x | x | x | x | x | x | x | x | X | X | x | x | x | x | x | x | x |
getBytes | X | X | x | ||||||||||||||||
getDate | x | x | x | X | x | ||||||||||||||
getTime | x | x | x | X | x | ||||||||||||||
getTimestamp | x | x | x | x | X | ||||||||||||||
getAsciiStream | x | x | X | x | x | x | |||||||||||||
getUnicodeStream | x | x | X | x | x | x | |||||||||||||
getBinaryStream | x | x | X | ||||||||||||||||
getObject | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x |
相关文章推荐
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- 数据库类型与java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- 类型匹配问题:数据库字段类型与java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java 数据类型与数据库 数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- 【数据库学习笔记】(3)SQL数据类型与Java数据类型的对应关系
- Java 数据类型在各个数据库中的对应关系
- Java.sql.Types,数据库字段类型,java数据类型的对应关系
- java.sql.Types,数据库字段类型,java数据类型的对应关系
- FLEX数据类型和JAVA数据类型对应关系
- java数据类型与Sql server数据类型对应关系
- Jni中C++和Java的数据类型的对应关系