Mysql Replace语句的语法:
REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name [(col_name,...)] VALUES ({expr | DEFAULT},...),(...),... 或: REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name SET col_name={expr | DEFAULT}, ... 或: REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name [(col_name,...)] SELECT ...
使用Replace into与Insert into效果差不多。但是,当表中有主键或是唯一索引(unique index)时,Replace into在进入插入之前会,先检查是表中是否存在与要插入的主键或是Unique Index一样的记录。有则删除旧记录,然后再插入新记录。所以使用Replace时,affected row可能比1大,因为可能有删除和输入的操作。
在使用Replace时,需要insert和delete权限。