sql与Java 数据类型的对应文档

类型名称

显示长度

数据库类型

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

 

以上就是Java数据类型和MySQL数据类型对应表。

对于bolb,一般用于对图片的数据库存储,原理是把图片打成二进制,然后进行的一种存储方式,在java中对应byte[]数组。

对于boolen类型,在mysql数据库中,个人认为用int类型代替较好,对bit操作不是很方便,尤其是在具有web页面开发的项目中,表示0/1,对应java类型的Integer较好。

BIT(1) (new in MySQL-5.0)

BIT

java.lang.Boolean

BIT( > 1) (new in MySQL-5.0)

BIT

byte[]

TINYINT

TINYINT

java.lang.Boolean if the configuration property tinyInt1isBit is set to true (the default) and the storage size is 1, or java.lang.Integer if not.

BOOL, BOOLEAN

TINYINT

See TINYINT, above as these are aliases for TINYINT(1), currently.

SMALLINT[(M)] [UNSIGNED]

SMALLINT [UNSIGNED]

java.lang.Integer (regardless if UNSIGNED or not)

MEDIUMINT[(M)] [UNSIGNED]

MEDIUMINT [UNSIGNED]

java.lang.Integer, if UNSIGNED java.lang.Long (C/J 3.1 and earlier), or java.lang.Integer for C/J 5.0 and later

INT,INTEGER[(M)] [UNSIGNED]

INTEGER [UNSIGNED]

java.lang.Integer, if UNSIGNED java.lang.Long

BIGINT[(M)] [UNSIGNED]

BIGINT [UNSIGNED]

java.lang.Long, if UNSIGNED java.math.BigInteger

FLOAT[(M,D)]

FLOAT

java.lang.Float

DOUBLE[(M,B)]

DOUBLE

java.lang.Double

DECIMAL[(M[,D])]

DECIMAL

java.math.BigDecimal

DATE

DATE

java.sql.Date

DATETIME

DATETIME

java.sql.Timestamp

TIMESTAMP[(M)]

TIMESTAMP

java.sql.Timestamp

TIME

TIME

java.sql.Time

YEAR[(2|4)]

YEAR

If yearIsDateType configuration property is set to false, then the returned object type is java.sql.Short. If set to true (the default) then an object of type java.sql.Date (with the date set to January 1st, at midnight).

CHAR(M)

CHAR

java.lang.String (unless the character set for the column is BINARY, then byte[] is returned.

VARCHAR(M) [BINARY]

VARCHAR

java.lang.String (unless the character set for the column is BINARY, then byte[] is returned.

BINARY(M)

BINARY

byte[]

VARBINARY(M)

VARBINARY

byte[]

TINYBLOB

TINYBLOB

byte[]

TINYTEXT

VARCHAR

java.lang.String

BLOB

BLOB

byte[]

TEXT

VARCHAR

java.lang.String

MEDIUMBLOB

MEDIUMBLOB

byte[]

MEDIUMTEXT

VARCHAR

java.lang.String

LONGBLOB

LONGBLOB

byte[]

LONGTEXT

VARCHAR

java.lang.String

ENUM('value1','value2',...)

CHAR

java.lang.String

SET('value1','value2',...)

CHAR

java.lang.String

mysql官方文档:

http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-type-conversions.html


转自:http://hi.baidu.com/zdz8207/blog/item/5fc9d209244ed592d0581b56.html

你可能感兴趣的:(sql,java)