数据库基础:UPDATE
外观
数据库并不总是完美的,我们可能需要更改数据库中的数据。例如,在 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'
|