Jas*_*son 3 mysql insert-update
我想更新表中可能存在或可能不存在的记录.如果它不在数据库中,那么它将被插入.
为了防止选择我UPDATE首先使用语句并检查affected_rows > 0是否,然后我将此记录插入表中.
我想知道是否有更好的方法来做到这一点?
你可以使用INSERT ... ON DUPLICATE KEY UPDATE语法:
INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE c=c+1;
Run Code Online (Sandbox Code Playgroud)
http://dev.mysql.com/doc/refman/4.1/en/insert-on-duplicate.html
这与REPLACE(Femaref的答案)之间的区别在于,如果密钥重复,REPLACE将删除旧行然后插入新行,而这将更新现有行.
| 归档时间: |
|
| 查看次数: |
601 次 |
| 最近记录: |