欢迎光临
我们一直在努力

mysql字段使用int类型,不能保存-1值,报错?

MySQL中的INT是 整数数据类型,它是一个整数。
它允许数字不带小数部分(没有小数部分)。例如,1、5,-10是整数类型,而1.5、5/7不能是整数。请注意,整数值可以是 正,负或零


整数类型范围

下表说明了每种整数类型的特征,包括每种整数类型所需的存储空间和范围(最小值和最大值)。
类型 字节 最小值 最大值
TINIINT 1 -128 127
SMALLINT 2 -32768 32767
MEDIUMINT 3 -8388608 8388607
INT 4 -2147483648 2147483647
BIGINT 8 -9223372036854775808 9223372036854775807
我们将要使用的数据类型的选择取决于我们将要存储的数据类型。例如,TINYINT数据类型足以满足一个班级最多可容纳35人的学生人数。但是,如果需要在一个国家/地区存储每个人的联系电话,则必须选择INT或BIGINT数据类型。
只要有可能,最好选择最小的数据类型,因为它会最小化数据库的大小

unsigned的用法

unsigned是mysql自定义的类型,表示无符号数值即非负数。signed为整型默认属性。

在mysql数据库中,unsigned表面含义是 '无符号’的意思,unsigned既为非负数,用此类型可以增加数据长度.

例如,如果 int最大是2147683647,那 tint unsigned 最大 就可以到 2147683647 * 2;以tinyint为例,它的取值范围-128-127,加不加signed都默认此范围。加上unsigned表示范围0-255,其实相当于把负数那部分加到正数上。例如身高、体重或者年龄等字段一般不会为负数,此时就可以设置一个
UNSIGNED ,不允许负数插入。

与unsigned类似的还有binary,unsigned 属性只针对整型,而binary属性只用于char 和varchar。


保存-1值报错解决办法

下你定义数据类型的时候,是不是加了unsigned,如果是int(10) unsigned就不能使用负数了只能使用正数。
phpMyAdmin的unsigned在哪里?表机构中的属性可以看到unsigned。
navicat的unsigned在哪里?自动增长列下面那个选项就是unsigned。

赞(0) 打赏
主机商所有内容均来自网络,若无意侵犯到您的权利,请及时与联系 QQ 2232175042,将在48小时内删除相关内容!!主机测评网 » mysql字段使用int类型,不能保存-1值,报错?

主机商评测网 找服务器 更专业 更方便 更快捷!

专注IDC行业资源共享发布,给大家带来方便快捷的资源查找平台!

联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫