auto_increment
使用存储过程执行批量插入后,我在Bids表的bidID中记录的值中看到这种奇怪的行为,对此感到非常不安:
INSERT INTO Bids (itemID, buyerID, bidPrice)
SELECT itemID, rand_id(sellerID, user_last_id), FLOOR((1 + RAND())*askPrice)
FROM Items
WHERE closing BETWEEN NOW() AND NOW() + INTERVAL 1 WEEK ORDER BY RAND() LIMIT total_rows;
例如,如果开始时的auto_increment
bidID值为101,并且我插入了100行,则结束值将变为213,而不是201。但是,这些插入的行的bidID依次运行,最大为201。
检查以下内容后,
SHOW VARIABLES LIKE 'auto_inc%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | 1 |
| auto_increment_offset | 1 |
+--------------------------+-------+
我不知道为什么会这样。是什么导致价格上涨auto increment
?
MyISAM或InnoDB表?
—
Cristian Porta 2014年
@CristianPorta,它是InnoDB。
—
2014年
您可以分享您的
—
Cristian Porta'3
show variables like '%innodb_autoinc_lock_mode%';
输出吗?
您确定没有其他与表相关的连接/活动(插入行)吗?
—
ypercubeᵀᴹ
:@QuestionOverflow一个很好的起点dev.mysql.com/doc/refman/5.5/en/...
—
克里斯蒂安·门