2013-11-22 61 views
0

你好,我正在使用下面的代码插入到我的数据库的值,我有一个ID字段是自动递增,我想应该数字插入每个下一个值插入增加它有一个,在我的情况下,id值有时会增加一个以上,例如最后一个id是900,下一个将是904,我想知道下面的代码是否在我的数据库中发现了这个bug,这是发生,例如,如果我选择在重复键的选项,它应该当我选择插入被插入,并用几个数字仅增加下一次更新,这里是代码:MySQL数据库内的自动增量字段正在增加一个以上

$con = new PDO(DB_DSN, DB_USERNAME, DB_PASSWORD); 
    $con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    $stmt = $con->prepare("Insert Into subscriptions (curso_id, user_id) 
    Values ('$cursoid', '$userid') 
    ON DUPLICATE KEY UPDATE curso_id = curso_id, user_id = user_id;" ); 
    $stmt->execute(); 

与其他词我[R使用此插入功能在id自动增量行内收缩间隙。我怎么能解决它?

回答

0

您是否删除了桌上的任何记录?如果你做了自动增量字段,仍然会继续增加基于最后插入的数据被删除。

ID名称 1名1 2名2 3名3 < - 删除

然后,你将插入新的数据将在ID不3.

标识插入4名称 1名称1 2名称2 4名称4

希望这h ELPS。