我四处寻找,但没有找到,如果它是可能的。
我有这个 MySQL 查询:
INSERT INTO table (id,a,b,c,d,e,f,g) VALUES (1,2,3,4,5,6,7,8)
字段 id 有一个“惟一索引”,所以不能有两个字段。现在,如果相同的 id 已经出现在数据库中,我想要更新它。但是我真的需要再次指定所有这些字段吗,比如:
INSERT INTO table (id,a,b,c,d,e,f,g) VALUES (1,2,3,4,5,6,7,8)
ON DUPLICATE KEY UPDATE a=2,b=3,c=4,d=5,e=6,f=7,g=8
或者:
INSERT INTO table (id,a,b,c,d,e,f,g) VALUES (1,2,3,4,5,6,7,8)
ON DUPLICATE KEY UPDATE a=VALUES(a),b=VALUES(b),c=VALUES(c),d=VALUES(d),e=VALUES(e),f=VALUES(f),g=VALUES(g)
我已经详细说明了插入的内容。
一个额外的说明,我想使用周围的工作得到的 ID!
id=LAST_INSERT_ID(id)
我希望有人能告诉我最有效的方法是什么。