文章目录
数据类型
常见的数据类型
整型
小数
字符型
日期型
数据类型
常见的数据类型
- 数值型:整型、小数(定点数、浮点数)
- 字符型:较短的文本:char、varchar;较长的文本:text、blob(较长的二进制数据)
- 日期型
整型
| 整型类型 | 字节 | 范围 |
|---|---|---|
| tinyint | 1 | 有符号:-128127;无符号:0255 |
| smallint | 2 | 有符号:-3276832767;无符号:065535 |
| mediumint | 3 | 反正很大,不用记住 |
| int | 4 | 反正很大,不用记住 |
| bigint | 5 | 反正很大,不用记住 |
1.如何设置有符号和无符号(默认是有符号的)
create table student(
t1 int, //有符号
t2 int unsigned //无符号
);
2.如果输入的数据超出对应整型的范围会怎么样
会报out of range异常,并且插入的是临界值(0或对应整型的最大值)
3.如果不设置长度,则代表的是默认的长度;长度代表的是显示数据的最大宽度 ,如果长度不够则在左边用0填充但必须搭配zerofill使用;和存储范围无关
create table student(
//如果插入数据409显示为:409
t1 int(4),
///如果插入数据409显示为:00409
t2 int(5) zerofill
);
小数
浮点型
float(M,D)
double(M,D)
| 浮点数类型 | 字节 | 范围 |
|---|---|---|
| float | 4 | 反正很大,不用记住 |
| double | 8 | 反正很大,不用记住 |
定点型
dec(M,D)
decimal(M,D)
| 定点类型 | 字节 | 范围 |
|---|---|---|
| DEC(M,D) | M+2 | 最大取值范围和double相同 |
| DECIMAL(M,D) | M+2 | 由M和K绝定 |
浮点型和定点型的特点:
1.M:整数部位+小数部位;D:小数部位(超出范围则插入的是临界值)
eg:
f1—>float(5,2) f2—>double(5,2) f3—>decimal(5,3) 123.12–>123.12 123.12–>123.12 123.12–>123.12 123.125–>123.13 123.125–>123.13 123.125–>123.13 123.1–>123.01 123.1–>123.01 123.1–>123.01 1234.12–>999.99 1234.12–>999.99 1234.12–>999.99 12.12–>012.12 12.12–>012.12 12.12–>012.12 2.M和D都可以省略:float和double是根据插入数据的大小来确定精度;decimal中的默认M为10,D默认0
3.定点型的精确度较高,如果要求插入的数值精度较高则建议使用定点型(比如:货币运算)
4.选择数据类型的原则:类型越简单越好,能保存数据的类型越小越好
字符型
- 较短的文本:char 、 varchar
- 较长的文本:text、blob
- 其他:
binary和varbinary:保存较短的二进制
enum:保存枚举
set:保存集合
| 字符串类型 | 特点 | 最多字符数 | 描述及存储需求 | 效率 |
|---|---|---|---|---|
| char(M) | 固定长度的字符 | M(可以省略,默认为1) | M为0~255之间的整数 | 高 |
| varchar(M) | 可变长度的字符 | M(不可以省略) | M为0~65535之间的整数 | 低 |
日期型
| 日期和时间类型 | 字节 | 最小值 | 最大值 |
|---|---|---|---|
| date(日期) | 4 | 1000-01-01 | 9999-12-31 |
| time(时间) | 3 | -838:59:59 | 838:59:59 |
| datetime(日期+时间) | 8 | 1000-01-01 00:00:00 | 9999:12-31 23:59:59 |
| year(年) | 1 | 1901 | 2155 |
| timestamp(日期+时间) | 4 | 19700101080001 | 2038年的某个时刻 |
datetime和timestamp的区别
- timestamp支持的时间范围较小;datetime支持的时间范围较大
- timestamp和实际时区有关,更能反映实际的日期;datetime只能反映出插入时的当地时区
- timestamp受mysql版本和sqlmode的影响很大
本文原文地址:https://blog.youkuaiyun.com/qq_43952245/article/details/90573842
本文详细介绍了数据库中常见的数据类型,包括整型、小数、字符型和日期型等,深入解析了每种类型的特性、存储需求及适用场景,帮助读者更好地理解和选择合适的数据类型。

被折叠的 条评论
为什么被折叠?



