【发布时间】:2015-11-30 09:58:08
【问题描述】:
我对“在重复密钥更新时插入 ...”功能有疑问。 并发插入是否安全? 我有以下情况:
INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE d=d+1;
存在以下唯一键的位置 (b,c)
如果执行了上面查询的大量并发插入,“d”字段的值是否适当增加?
【问题讨论】:
标签: mysql concurrency sql-insert
我对“在重复密钥更新时插入 ...”功能有疑问。 并发插入是否安全? 我有以下情况:
INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE d=d+1;
存在以下唯一键的位置 (b,c)
如果执行了上面查询的大量并发插入,“d”字段的值是否适当增加?
【问题讨论】:
标签: mysql concurrency sql-insert
是的,在 InnoDB 中,每个并发插入都会锁定并增加您的 d 值。第一个查询将锁定并插入默认值为d的行
【讨论】: