mysql、sqlserver、oracle各数据类型与java类型对应
一、mysql
| 类型名称 | 显示长度 | 数据库类型 | JAVA类型 | JDBC类型索引(int) | 描述 |
| VARCHAR | L+N | VARCHAR | java.lang.String | 12 | |
| CHAR | N | CHAR | java.lang.String | 1 | |
| BLOB | L+N | BLOB | java.lang.byte[] | -4 | |
| TEXT | 65535 | VARCHAR | java.lang.String | -1 | |
| INTEGER | 4 | INTEGER UNSIGNED | java.lang.Long | 4 | |
| TINYINT | 3 | TINYINT UNSIGNED | java.lang.Integer | -6 | |
| SMALLINT | 5 | SMALLINT UNSIGNED | java.lang.Integer | 5 | |
| MEDIUMINT | 8 | MEDIUMINT UNSIGNED | java.lang.Integer | 4 | |
| BIT | 1 | BIT | java.lang.Boolean | -7 | |
| BIGINT | 20 | BIGINT UNSIGNED | java.math.BigInteger | -5 | |
| FLOAT | 4+8 | FLOAT | java.lang.Float | 7 | |
| DOUBLE | 22 | DOUBLE | java.lang.Double | 8 | |
| DECIMAL | 11 | DECIMAL | java.math.BigDecimal | 3 | |
| BOOLEAN | 1 | 同TINYINT | |||
| ID | 11 | PK (INTEGER UNSIGNED) | java.lang.Long | 4 | |
| DATE | 10 | DATE | java.sql.Date | 91 | |
| TIME | 8 | TIME | java.sql.Time | 92 | |
| DATETIME | 19 | DATETIME | java.sql.Timestamp | 93 | |
| TIMESTAMP | 19 | TIMESTAMP | java.sql.Timestamp | 93 | |
| YEAR | 4 | YEAR | java.sql.Date | 91 |
二、sqlserver
| SQL Server 类型 | JDBC 类型 (java.sql.Types) | Java 语言类型 |
|---|---|---|
| bigint |
BIGINT |
long |
| timestamp binary |
BINARY |
byte[] |
| bit |
BIT |
boolean |
| char |
CHAR |
String |
| decimal money smallmoney |
DECIMAL |
java.math.BigDecimal |
| float |
DOUBLE |
double |
| int |
INTEGER |
int |
| image varbinary(max) |
LONGVARBINARY |
byte[] |
| varchar(max) text |
LONGVARCHAR |
String |
| nchar |
CHAR NCHAR (Java SE 6.0) |
String |
| nvarchar |
VARCHAR NVARCHAR (Java SE 6.0) |
String |
| nvarchar(max) ntext |
LONGVARCHAR LONGNVARCHAR (Java SE 6.0) |
String |
| numeric |
NUMERIC |
java.math.BigDecimal |
| real |
REAL |
float |
| smallint |
SMALLINT |
short |
| datetime smalldatetime |
TIMESTAMP |
java.sql.Timestamp |
| varbinary udt |
VARBINARY |
byte[] |
| varchar |
VARCHAR |
String |
| tinyint |
TINYINT |
short |
| uniqueidentifier |
CHAR |
String |
| xml |
LONGVARCHAR SQLXML (Java SE 6.0) |
String SQLXML |
| time |
TIME (1) |
java.sql.Time (1) |
| date |
DATE |
java.sql.Date |
| datetime2 |
TIMESTAMP |
java.sql.Timestamp |
| datetimeoffset (2) |
microsoft.sql.Types.DATETIMEOFFSET |
microsoft.sql.DateTimeOffset |
三、oracle
| SQL数据类型 | JDBC类型代码 | 标准的Java类型 | Oracle扩展的Java类型 |
|---|---|---|---|
| 1.0标准的JDBC类型: |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2.0标准的JDBC类型: |
|||
|
|
|
|
|
|
|
|
|
|
| 用户定义的对象 |
|
|
|
| 用户定义的参考 |
|
|
|
| 用户定义的集合 |
|
|
|
| Oracle扩展: |
|||
|
|
|
N/A |
|
|
|
|
N/A |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
其中java.sql.Types 通过私有构造器的方式,让Types 无法被实例化

