浏览 1393 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-11-02
最后修改:2010-11-03
ID 越过---没有生成 id 为64的记录 请问为什么 tsung测试 ejabberd http插入 数据库接口 +------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | vname | varchar(128) | YES | UNI | NULL | | +------------+--------------+------+-----+---------+----------------+
select * from names where id like'6_' order by id; +----------+------------+ | id | vname | +----------+------------+ | 60 | test160 | | 61 | test161 | | 62 | test162 | | 63 | test163 | | 65 | test164 | | 66 | test165 | | 67 | test166 | | 68 | test167 | | 69 | test168 | +----------+------------+
这个与数据库内部实现机制有关。这个自增的字段属于临界资源,肯定是受内部并发控制锁来进行控制的。 再加上一定的缓存机制,可能前一个操作会预先分配了65和66,后一个操作只得到67,然后前一个操作只用了65,那么66就没有人再用力。 oracle里面这个情况很常见。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |