我想知道优点/缺点或做MySQL更换与做更新或插入语句是什么.
基本上,
干
dao.replaceEntry(entry);
Run Code Online (Sandbox Code Playgroud)
代替:
if(existing){
dao.insertEntry(entry);
} else {
dao.updateEntry(entry);
}
Run Code Online (Sandbox Code Playgroud)
另外,调用dao.replaceEntry调用dao.insertOrUpdate会产生误导吗?
Fai*_*roz 11
我会做insertOrUpdate而不是replace.根据Mysql的文档
REPLACE与INSERT的工作方式完全相同,只是如果表中的旧行与PRIMARY KEY或UNIQUE索引的新行具有相同的值,则在插入新行之前删除旧行
如果该行存在,则执行删除然后插入新行.更新是更好的方法,然后在REPLACE执行时删除和插入,即一个操作与两个操作.
我能想到的另一个问题是在数据库中有触发器或级联删除.在REPLACE的情况下,您最后会删除相关的行,因为REPLACE将首先删除,然后在具有相同ID的行已存在时插入.
| 归档时间: |
|
| 查看次数: |
4746 次 |
| 最近记录: |