跳转到内容

数据库基础: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'
华夏公益教科书