suchen

Heim  >  Fragen und Antworten  >  Hauptteil

php - 数据库在插入数据时,自动递增的主键`id`,没有按顺序递增

id=1 name=...
id=2
id=6
在删除之前插入的id为3,4,5的记录后再插入为什么不是3,而是到6了

为情所困为情所困2839 Tage vor555

Antworte allen(2)Ich werde antworten

  • 为情所困

    为情所困2017-05-16 13:15:37

    你用命令看看,就知道为什么了.

    show create table test2;

    自增值不会随你删除记录而减少.

     test2 | CREATE TABLE `test2` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `mouth` int(11) NOT NULL,
      `num` int(11) NOT NULL,
      PRIMARY KEY (`id`,`mouth`)
    ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk

    要修改自增值请用sql来修改

     alter table test2 auto_increment=4;
    

    修改后的主键自增起始点.

      test2 | CREATE TABLE `test2` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `mouth` int(11) NOT NULL,
      `num` int(11) NOT NULL,
      PRIMARY KEY (`id`,`mouth`)
    ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=gbk |

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-05-16 13:15:37

    你可以参考一下这里的 mysql自增,如果你想要那个 id 继续从3开始就要手动 INSERT INTO (id,字段2,字段2) VALUES ('3',值1,值2)

    Antwort
    0
  • StornierenAntwort