id no正确增加

时间:2013-10-21 00:32:43

标签: mysql database phpmyadmin

我有一些表有一些列,其中一个名为student_id有自动增量和主键。

但我的问题是当我从另一个表中添加任何值时会自动生成一些ID

更清楚:我的字段student_id的值为1 2 3 4 5

但是当我添加新值时,它从15和16开始,依此类推。

是否有任何缓存或类似的东西?

我正在使用:

 INSERT INTO student(first_name,school_id,class_id,stage_id,grade_id)
 SELECT first_name, 1,1,1,1 FROM `TABLE 13`

表13有:

  

first_name(varchar)

student有:

  

student_id(INT)主键AUTOIncrement

2 个答案:

答案 0 :(得分:1)

MySQL始终从该字段中的最高值自动递增,即使该记录已被删除或更改。如果您希望ID从1开始,请使用此命令(如@mihai在评论中所述):

ALTER TABLE tablename AUTO_INCREMENT = 1

还要考虑一下为什么要从ID开始.1。您是否正在编写软件以依赖所有ID连续且从1开始?这是一个坏主意 - 如果学生以后辍学怎么办?

答案 1 :(得分:0)

尝试这个....如果它适合你的问题,不要忘记检查它.....

CREATE TABLE `student` (
    `first_name` VARCHAR(50) NULL DEFAULT NULL,
    `school_id` INT(11) NOT NULL AUTO_INCREMENT,
    `class_id` INT(11) NOT NULL,
    `stage_id` INT(11) NOT NULL,
    `grade_id` INT(11) NOT NULL,
    PRIMARY KEY (`school_id`)
)