天天看点

MySQL和Java数据类型对应

类型名称

显示长度

数据库类型

java类型

jdbc类型索引(int)

描述

varchar

l+n

java.lang.string

12

char

n

1

blob

java.lang.byte[]

-4

text

65535

-1

integer

4

integer unsigned

java.lang.long

tinyint

3

tinyint unsigned

java.lang.integer

-6

smallint

5

smallint unsigned

mediumint

8

mediumint unsigned

bit

java.lang.boolean

-7

bigint

20

bigint unsigned

java.math.biginteger

-5

float

4+8

java.lang.float

7

double

22

java.lang.double

decimal

11

java.math.bigdecimal

boolean

同tinyint

id

pk (integer unsigned)

date

10

java.sql.date

91

time

java.sql.time

92

datetime

19

java.sql.timestamp

93

timestamp

year

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

mysql不支持bool类型。

2

<code>create table xs</code>

<code>(</code>

<code>id </code><code>int</code> <code>primary key,</code>

<code>bl </code><code>boolean</code>

<code>)</code>

这样可以创建成功,但检查表结构会发现mysql把它替换成tinyint(1)。

即当把一个数据设置成bool类型的时候,数据库会自动转换成tinyint(1)的数据类型,其实这个就是变相的bool。 默认值也就是1,0两种,分别对应了bool的true和false

在java对应的pojo类中,可以根据实际情况使用java.lang.boolean或者java.lang.integer。