一、字符串数据类型:
MySQL类型名 |
大小 |
用途 |
对应Java类名 |
char |
0-255 bytes |
定长字符串 (姓名、性别、学号) |
String |
varchar |
0-65535 bytes |
变长字符串(比上面更长一点的那种) |
String |
tinytext |
0-255 bytes |
比较短的那种文本数据(新闻速报的那种) |
String |
mediumtext |
0-16 777 215 bytes |
中等长度的文本数据(小作文) |
String |
text |
0-65 535 bytes |
长文本数据(比上面更长一点的那种) |
String |
longtext |
0-4 294 967 295 bytes |
极大文本数据(论文) |
String |
二、日期/时间数据类型:
这个时间的对应的Java类、只要格式正确、都是可以取的,主要看需求是什么。不管你后端是String、Date 类型、只要格式是对应的就是可以的。
MySQL类型名 |
用途 |
date |
YYYY-MM-DD 格式的日期值 |
time |
hh:mm:ss 格式的时间值 |
datetime |
YYYY-MM-DD hh:mm:ss 格式的日期和时间值 |
timestamp |
YYYY-MM-DD hh:mm:ss 格式的时间戳记值 |
year |
YYYY 或YY 格式的年值 |
三、数值数据类型:
MySQL类型名 |
用途 |
对应Java类名 |
tinyint |
一个很小很小的整数 |
Integer |
smallint |
一个小整数 |
Integer |
int |
一个int大小的整数 (大都用来做id) |
Integer |
mediumint |
一个中等大小的整数 |
Integer |
bigint |
一个蛮大的整数(也常用来做id) |
Long |
float |
学生成绩、允许有误差的、单精度浮点数 |
Float |
double |
学生成绩、允许有误差的、双精度浮点数 |
Double |
decimal |
计算工资、盈利、金融方面 |
Java.math.BigDecimal |
四、二进制数据类型:
MySQL类型名 |
描述 |
tityblob |
不超过 255 个字符的二进制字符串 |
blob |
二进制形式的长文本数据 |
mediumblob |
二进制形式的中等长度文本数据 |
longblob |
二进制形式的极大文本数据 |