今天我们要和大家一起探讨的是MySQL数据库主键(自动增加)的数据类型所带来的一些错误问题,如果你在实际操作中出现了以下文中所示的问题说明你所执行的任务over了。以下就是文章的主要内容。
前段时间在做一个网站时,使用了MySql数据库,并使用 EMS MySQLManager 来创建和管理数据库,其中有一个表有一个自增的MySQL数据库主键id,因为EMS MySQLManager创建表时默认的自增类数据类型为TinyInt,刚开始也没有注意到这个问题。直到今天发现怎么也不能往数据库中插入数据。
错误原因是id列中值127的记录已经存在!检查了一下数据库,果然存在,但是id列明明是自增的,我又没有在insert 语句中指定id列的值,为什么会出现这个问题呢?
检查了一下数据库,发现id列的数据类型为tinyint,然后又想怎么会是127 (128-1)这么特别的数字呢?后来一想,是不是tinyint只能表示-127~127之间的数呢?结果我就把数据类型改为integer,一试果然没有问题!
看来,选择正确的数据库数据类型还是很重要的。
以上的相关内容就是对MySQL数据库主键(自动增加)的数据类型所带来的错误的介绍,望你能有所收获。
【编辑推荐】