我有一个不同的领域,包括一个主键,id
,这是一个表自动递增:插入新项目到一个已填充表
+-------------------------------+------------------+------+-----+---------+
| Field | Type | Null | Key | Default | Extra
+-------------------------------+------------------+------+-----+---------+
| id | tinyint(11) | NO | PRI | NULL | auto_increment
表已填充了114个项目:
mysql> select count(*) as cnt from beer;
+-----+
| cnt |
+-----+
| 114 |
+-----+
而我试图插入一组新的项目到表中。我没有明确插入一个ID密钥。下面是一个示例查询:
mysql> INSERT INTO beer (name, type, alcohol_by_volume, description, image_url)
VALUES('Test Ale', 1, '4.6', '', 'https://untappd.s3.amazonaws.com/site/assets/images/temp/badge-beer-default.png');
尝试手动插入查询时,我得到以下错误(插入实际上是一个PHP脚本来完成相同的结果):
ERROR 1062 (23000): Duplicate entry '127' for key 1
这是怎么回事?我认为插入后id会自动增加。我应该注意到,前13条由于某种原因是空白/空的,最后一个键现在是127.(这不是我的表 - 我只是写脚本)。
可能有人改变了自动增量的值('ALTER TABLE表名AUTO_INCREMENT = 127;' – jcho360 2013-05-07 16:34:12