所以我想插入一个新行但是在检查之后它还不存在。
我的表非常简单;
CREATE TABLE IF NOT EXISTS table
(
id INT NOT NULL AUTO_INCREMENT,
pl VARCHAR(255) NOT NULL,
num1 INT NOT NULL,
num2 INT NOT NULL,
num3 INT NOT NULL,
PRIMARY KEY (pl)
) ENGINE=InnoDB;
因此,为方便起见,我将值更改为简单的内容。
我试过INSERT INTO table(pl, num1, num2, num3) VALUES(val,0,0,0) ON DUPLICATE KEY UPDATE pl=pl;
但上面仍然进入自动增量字段的记录原因。
我也尝试过这样做但不是ON DUPLICATE
,而是INSERT IGNORE INTO
,但我得到的结果相同。
那么只有在主键不存在且它什么也不做的情况下才有可能插入行? (现在创建一个新的相同行,其中增量为+1