有需求是插入数据时需要判断数据库中是否有这条数据,有的话更新,没有的话插入。
一般操作会先根据唯一标识查信息,然后做判断,有则更新,无则增加。
这样做的缺点是多次查询数据库,耗时,消耗资源。
ON DUPLICATE KEY UPDATE
插入更新,mysql数据库自己就可以做
1.表设计:
表中增加unique字段,作为更新的标准。
a.以一个字段为unique字段
2.插入更新
INSERT INTO user_admin_t (_id,password) VALUES ('1','多条插入1') , ('UpId','多条插入2') ON DUPLICATE KEY UPDATE password = VALUES(password);
其实修改的方法有很多种,包括SET或用REPLACE,连事务都省的做,ON DUPLICATE KEY UPDATE能够让我们便捷的完成重复插入的开发需求,但它是Mysql的特有语法,使用时应多注意主键和插入值是否是我们想要插入或修改的key、Value。