我在表中有一个自动递增的列。让我们称之为employee_id
。
设初始值为 1,每次插入加 1。插入 10 行后,自动递增的值变为 10(employee_id
为 10)。
现在,如果我手动插入第 11 行,员工 ID 为 15 ,然后允许 MySqlAUTO_INCREMENT
接管,下一个自动递增值是 11 还是 16 ?
我在表中有一个自动递增的列。让我们称之为employee_id
。
设初始值为 1,每次插入加 1。插入 10 行后,自动递增的值变为 10(employee_id
为 10)。
现在,如果我手动插入第 11 行,员工 ID 为 15 ,然后允许 MySqlAUTO_INCREMENT
接管,下一个自动递增值是 11 还是 16 ?
它将是 16,bcs MySQL 将在每次插入/更新操作后更新 AUTO_INCREMENT 计数器的值。这适用于最流行的表引擎 MyISAM 和 InnoDB:
我在 localhost 上尝试过,在手动插入第 15 行 ( employee_id=10, name=John
) 后,它通过获取max auto_increment id
.
表的存储引擎是:MyISAM。
下一个 Auto_increament 值将是 16。因为 Auto_increament 将在每次插入/删除操作后更新。