数据保存时若数据已存在则更新或者忽略
- 数据存在则更新
--插入替换数据 --首先尝试插入数据到表中,如果发现表中已经有此行数据(根据主键或者唯一索引判断) --则先删除此行数据,然后插入新的数据。否则,直接插入新数据 REPLACE INTO 表名(字段1, 字段2, ...) VALUES(值1, 值2, ...);
- 数据存在则忽略
--会忽略数据库中已经存在的数据,如果数据库没有数据,就插入新的数据, --如果有数据的话就跳过这条数据 INSERT IGNORE 表名(字段1, 字段2, ...) VALUES(值1, 值2, ...);
- 说明
实现数据更新或忽略的判别字段必须是主键或唯一索引(可以是单列或多列)。
比如要根据id判断是否重复,那么id必须是主键或者存在唯一索引。
比如要根据id + cardNo判断是否重复,那么要建立2个字段联合的唯一索引。