在插入資料遇到 PRIMARY KEY 或 UNIQUE KEY 碰撞時
REPLACE 會將原本的資料刪除再執行新增的動作
這裡特別要注意的是會將資料刪除
並不只是使用複寫方式去處理的
利用 REPLACE for SELECT 來處理資料真的很方便
不必擔心資料碰撞的問題
但請記得 REPLACE 的特性
有時候事情不是想像中那麼快樂的
REPLACE Syntax:
REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},...),(...),... -- 或: REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name SET col_name={expr | DEFAULT}, ... -- 或: REPLACE [LOW_PRIORITY | DELAYED] [INTO] tbl_name [(col_name,...)] SELECT ...
參考來源:
MySQL Replace INTO的使用
MySQL 5.0 REPLACE Syntax
0 回應:
張貼留言