mysql中 id 是int设为类型,长度为11,可是数据库中只能存储1000条记录。这是什么原因啊?

mysql中 id 是int设为类型,长度为11,可是数据库中只能存储1000条记录。这是什么原因啊?,第1张

id的长度跟你存储多少条记录应该联系不大。

首先,确定测试你的id表字段能否存储11位数字,如果可以,那么说明此字段长度为11(number(11)),如果不可以,那么就要检查你建表时候,此表字段(id)分配了多少。

其次,你只能存储1000条记录?是不是你再插入数据的时候不能插入,还是什么。如果是这样的话,检查数据库设置。慢慢找原因,莫要乱了阵脚。

如果你表中已经设为自增长了,还调什么,取决于当时建表时你所选的数据类型

你这样做下试试

set IDENTITY_INSERT 表名 ON

找到最大号,用语句插入数据插数据

SET IDENTITY_INSERT 表名 OFF

再用语句把插入的数据删除

如果还不行的话,有一个想法,根据原表的建表语句,再建一个新表,定义identity属性时注意数据类型后不要加长度限制,建好表后把原表中的数据插入新建表中,再把原表删除,把新建表改名称。

int(m),integer(m) 32位整数(4字节....)

其实这个m跟INT能表示的范围没有关系,只要你选择了INT,INT是用4个字节表示,1个字节8位,若表示无符号数时可以表示的范围是 0 ------- 232-1 ,你可以存储任何在这个范围内的数字。

但也不是说跟表示完全没关系,mysql中有个zerofll,当建表时选择了0 填充之后存储就会有很大的不同,这时如果你选择的是int(4) 你存储12则数据库中存储的是0012,如果填写12345,此时超过了他的指定宽度则按原样存储。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7353760.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存