建表的过程,就是画表头的过程 //声明表头
建表的过程就是一个 声明字段 过程
建列时,—> 能够容纳放置的的内容,但又不浪费
存储同样的数据,不同的列类型,所占的空间和效率是不一样的。 这就是我们建表前 列类型的意义


数值型
整形
Tinyint
占据空间:1字节,存储范围:-128—127,0—255(2的8次方-1)
Smallint
占据空间:2字节,存储范围 :-32768—32767
Mediuint
占据空间:3字节,存储范围 :
Int
占据空间:4字节,存储范围:-21亿—42亿
bigint
占据空间:8字节,存储范围 :

对于int型 占据字节越大—> 范围越大

详解:

一个字节 8个位 0—2^8-1 0-255
-2^7 —> +2^7-1
(-127-128)

N个字节 8N个位 0—2^8N-1
-2^(8N-1) --> +2^(8N-1)-1;


Tinyint

范围: -128—127

Tinyint unsigned (加列类型unsigned表示其为无符号的类型,正数)

范围: 0—255

zerofill zero是零,fill是填充 代表0填充

向表class 里插入 列(sunm)
alter table class add sunm smallint(5) zerofill not null default 0;

insert into class (sname,sunm) values (‘子龙’,1);
设置子龙的学号为1
\"在这里插入图片描述\"
虽设置学号为1 但前面使用了 smallint(5) zerofill 自动补全为5位 所以输出结果为00001


报错: out of range 超出范围

收藏 打印