1. 批量插入 insert into ............sql
insert into table_name (id, name, age) values (1,'喬峯',21),(2,'段譽',22),(3,'虛竹',23);
2. 批量更新(存在就更新, 不存在就插入) insert into ............ on duplicate key update ............ spa
insert into table_name (id, name, age) values (1,'喬峯',21),(2,'段譽',22),(3,'虛竹',23) on duplicate key update name = values(name),age = values(age);
3. 批量更新(存在就更新, 不存在就插入) replace into ............code
replace into table_name (id, name, age) values (1,'喬峯',21),(2,'段譽',22),(3,'虛竹',23);
on duplicate key update 和 replace into 兩種批量更新的區別table
on duplicate key update 是在原來的記錄上進行更新class
replace into 是先把原來的記錄刪除,而後再插入新的記錄,因此若是字段沒有寫全就會出現某些字段數據的丟失。date
因此 replace into 要慎用!慎用!慎用!數據