mysql中TINYINT取值范围是多少

来源:这里教程网 时间:2026-02-28 16:47:41 作者:

项目场景:

最近在开发过程中,看见表设计中是thinyint字段,但对于它的范围产生了好奇

mysql中TINYINT取值范围是多少

问题描述:

当我们填写超过128数值的时候,该字段就会报以下错误

mysql中TINYINT取值范围是多少

原因分析:

从 -2^7 (-128) 到 2^7 - 1 (127) 的整型数据。存储大小为 1 个字节(不设置为UNSIGNED 无符号类型)。
所以建表的时候,真实效果其实只为tinyint(3),哪怕你建tinyint(100),他最大还是3位这么多。

在这里给大家科普一下tinyint为什么会产生这样的限制

额外进行知识点拓展
mysql中int、bigint、smallint 和 tinyint的主要区别简单介绍

解决方案:

解决方法主要有三个
1.修改数据表字段(改为int或者其他类型)
2.前端输入框进行校验,超过数值则进行弹框提示(不友好)
3.后端数值进行校验,不符合则抛出异常提示(我用的第三种方式)

Assert.isTrue(!(rule.getPriority()!= null && rule.getPriority()>100),"支持最大优先级数为100!");

相关推荐