-- 僅更新 id=10005 的 email
UPDATE customers SET email='elmer@fudd.com' WHERE cust_id=10005;
警告:省略 WHERE 將更新全表所有列,造成災難性資料覆蓋。
UPDATE customers SET email=NULL WHERE cust_id=10005;
DELETE FROM customers WHERE cust_id=10005;
警告:DELETE FROM customers; (無 WHERE) 會清空全表。
SELECT * FROM customers WHERE cust_id=10005; 確認目標列無誤。START TRANSACTION;
UPDATE ... WHERE ...;
-- 確認筆數 ROW_COUNT()
COMMIT; -- 或 ROLLBACK
cust_id) 是精準定位的關鍵,設計表時務必定義 PK。TRUNCATE:DDL、不可 Rollback、重置自增 ID、速度極快、不觸發 Trigger。DELETE:DML、可 Rollback、保留自增 ID、觸發 Trigger、逐列記錄 Binlog。