跳轉到內容

資料庫基礎:UPDATE

來自華夏公益教科書,開放的書籍,為開放的世界

論文 2 - ⇑ 資料庫基礎 ⇑

← SELECT UPDATE INSERT →


資料庫並不總是完美的,我們可能需要更改資料庫中的資料。例如,在 Facebook 上,如果有人很煩人,並且你限制了他們對你個人資料的訪問許可權,則需要將訪問欄位從“正常”更新為“限制”。或者,如果我們其中一個罪犯又多了一個疤痕,你將需要更新 numScars 欄位。讓我們看一下這個例子,其中我們的罪犯 Peter 在右臉頰上又多了一個疤痕。這是他最初的狀態

name: Peter
numScars: 7
UPDATE crooks
SET numScars = 8

但這裡有一個問題,此語句將所有記錄更新為 numScars = 8。這意味著每個罪犯現在將有 8 個疤痕!

ID 姓名 性別 出生日期 城鎮 numScars
1 Geoff 12/05/1982 Hull 8
2 Jane 05/08/1956 York 8
3 Keith 07/02/1999 Snape 8
4 Oliver 22/08/1976 Blaxhall 8
5 Kelly 11/11/1911 East Ham 8
6 Marea 14/07/1940 Wythenshawe 8

我們需要使用 WHERE 子句來指定要更新的罪犯,你之前在 SELECT 示例中已經看到了它。

UPDATE crooks
SET numScars = 8
WHERE name = "Peter" --only updates those people who are called Peter
練習:UPDATE 語句

使用上述資料集,編寫一個 UPDATE 語句將 Geoff 的出生日期更改為 1939 年 12 月 17 日

答案

UPDATE crooks
SET DoB = '17/12/1939'
WHERE name = 'Geoff'

所有罪犯都搬到了金絲雀碼頭,更新表格以顯示這一點

答案

UPDATE crooks
SET town = 'Canary Wharf'

所有名叫 Sheila 的女罪犯都撒謊了年齡,她們都出生於 1984 年 1 月 16 日

答案

UPDATE crooks
SET DoB = '16/01/1984' ---be careful with dates, they might be using American format
WHERE name = 'Sheila'
AND gender = 'Female'
華夏公益教科書