【MySQL】数据类型
🌸心有所向,日复一日,必有精进
🌸专栏:《MySQL》
🌸作者:早凉
目录
数据类型的分类
类型范围
类型 | 字节 | 最小值(带符号) | 最大值(带符号) | 最小值(无符号) | 最大值(无符号) |
---|---|---|---|---|---|
TINYINT | 1 | -128 | 127 | 0 | 255 |
SMALLINT | 2 | -32768 | 32767 | 0 | 65535 |
MEDIUMINT | 3 | -8388608 | 8388607 | 0 | 166777215 |
INT | 4 | -2147483648 | 2147483647 | 0 | 4294967295 |
BIGINT | 8 | -9223372036854775808 | 9223372036854775807 | 0 | 18446744073709551615 |
数值类型
tinyint
- 在MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的。
- 可以通过UNSIGNED来说明某个字段是无符号的
在MySQL中,默认的tinyint生成的是有符号的,当数据超过范围时,直接报错;
但是在C/C++中:
发现并没有报错发生,这是不一样的,在学习的时候不能混为一谈;
在无符号类型的时候,插入负数直接报错;
尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不
下,与其如此,还不如设计时,将int类型提升为bigint类型。
bit类型
bit[(M)] : 位字段类型。M表示每个值的位数,范围从1到64。如果M被忽略,默认为1。
- bit字段在显示时,是按照ASCII码对应的值显示。
- 在特定场景下,只用1位或几位bit位实现就可以使用。
小数类型
float
float[(m, d)] [unsigned] : M指定显示长度,d指定小数位数,占用空间4个