人亦已歌 发表于 2023-1-19 10:02:16

Mysql数据库核心技术(十九)-字段属性signed有符号 unsigned 无符号

signed和unsigned只对数值类型的字段有效,当字段类型为数值时,默认为有符号,添加unsigned后数值范围增加一倍。

下面我们给sttr表添加一个测试字段

alter table sttr add column age tinyint signed after id;以上我们添加了一个age字段,字段类型为tinyint,数值范围为-128~127,下面给age字段插入-129和128试试看。


通过上面的实验可以看出,当我们插入128和-129的时候,由于超出了tinyint的存储范围,提示Out of range value for column 'age' at row 1。
当我们插入127和-128时是成功的。
下面我们给age字段添加unsigned无符号属性试试看,添加属性前需要先清空数据表,因为age字段中已经存在有符号的数据。

alter table sttr modify column `age` tinyint unsigned;

然后再插入一些数据试试看有什么变化



实验证明,此时我们可以插入0-255之间的数值,-1无法插入。

ok,以上就是signed有符号和unsigned无符号的使用方法。

濤濤 发表于 2023-1-30 22:08:15

卷起来,已经没有后路可退

宅男女神 发表于 2023-1-31 05:12:48

少有的看了不犯困的教程,浅显易懂,非常好

xmxm766 发表于 2023-1-31 13:16:46

顶起来,学mysql的快来看

寻找自己。 发表于 2023-1-31 23:48:36

楼主真乃世外高人

songcool 发表于 2023-2-1 15:51:34

顶顶顶赞赞赞

Вера 发表于 2023-2-2 07:56:27

原创教程,非常好!

为民伸冤 发表于 2023-2-3 00:00:58

真的好,快点学起来把

aixo 发表于 2023-2-15 23:51:19

难得看到这么好的教程。

lilifeng 发表于 2023-2-18 04:21:17

学会了,继续
页: [1] 2 3 4
查看完整版本: Mysql数据库核心技术(十九)-字段属性signed有符号 unsigned 无符号