修改資料表中的某些資料,就會使用 UPDATE 的敘述句語法。
基本語法如下:
UPDATE <TableName>
SET <fieldName> = <New Content>;
舉前一天 Day23 新增資料表和資料 時新增的 Employee 資料表,要將裡頭的 salary 欄位統一為 40000 ,語法就會長成下面這樣:
SET SQL_SAFE_UPDATES = 0;
UPDATE Employee
SET salary = 40000;
SELECT * FROM Employee;
P.S. 如果出現 Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. 請在後方加上 WHERE 指令或是將 SQL_SAFE_UPDATES 設為 0。
比照上方的指令,在後方加上 WHERE 即可。
UPDATE Employee
SET salary = 38000
WHERE email = 'andy@abc.com';
SELECT * FROM Employee;
在欄位條件沒有設定為 NOT NULL 的情況下,就直接在 SET 的值內直接寫入 NULL 即可。
UPDATE Employee
SET salary = NULL
WHERE email = 'sandy@abc.com';
SELECT * FROM Employee;
簡言之,在 SET 中以 "," 分隔多個欄位條件即可。
另外, 「+=」 、 「字串相加」...等在 JavaScript 常見的寫法,在 SQL 上是沒法使用的。
UPDATE Employee
SET salary = salary + 5000, email = CONCAT(email, '.tw')
WHERE birth_date > '1992-09-01';
SELECT * FROM Employee;