数据库原理与应用 第 5 章 · 第六节
课程第 5 章第六节 图形加数据插入数据部分与多行图形改数据修改数据图形删数据删除数据 版式
第 5 章 数据表的管理和表中数据操纵 · 第六节

表中数据的操纵

INSERT 增、UPDATE 改、DELETE 删
本 节 知 识 点
  1. 39用 Workbench 添加数据
  2. 40用 INSERT 添加一行记录
  3. 41插入部分数据值与多行记录
  4. 42用 Workbench 修改数据
  5. 43用 UPDATE 修改表中数据
  6. 44用 Workbench 删除数据
  7. 45用 DELETE 删除表中数据
39
第 5 章 · 第六节

用 Workbench 添加数据

在结果网格里直接填,填完点 Apply 才写进去。

第 39 页课件

重 点

点 Apply 之前会弹出一段 INSERT 语句,那就是它替你写的。

打个比方

相当于在 Excel 里输一行,再按一下保存。

想一想

界面填数据和写 INSERT,哪一种更容易出错?

40
第 5 章 · 第六节

用 INSERT 添加一行记录

INSERT 往表里加一行,字符串要用单引号裹住。

第 40 页课件

试一试三条命令各动了什么

对这张表
学生表 s
snosnage
三条命令只动表里的行,表结构一个字没变。

重 点

不写字段名就得按建表顺序把每列填齐,写了才能挑着填。

上机做

上机第 7 题 插入三个学生

41
第 5 章 · 第六节

插入部分数据值与多行记录

可以只填几列,也可以一次插好几行。

第 41 页课件

重 点

没填的列自动是空值,但 NOT NULL 的列不给值就会报错。

记牢它三条

  1. 没填的自动补空值
  2. 多行之间用逗号隔开
  3. 一条语句比三条快

练一练

age 是 NOT NULL 又没有默认值,插入时不给它值会怎样?
  1. A自动填 0
  2. B自动填空值
  3. C报错,不让插
  4. D插得进去但有警告
答案 C

没有默认值又不许为空,不给值就报 1364。

上机做

上机第 7 题 只填学号和课程号

42
第 5 章 · 第六节

用 Workbench 修改数据

双击单元格直接改,改完同样要点 Apply。

第 42 页课件

打个比方

一个是拿笔在表格上改一格,一个是下一道命令让全班一起改。

重 点

界面改一行方便,改一批还是写 UPDATE 快。

想一想

要给全班每人加一分,你会怎么做?

43
第 5 章 · 第六节

用 UPDATE 修改表中数据

UPDATE 改已有的行,SET 后面还能写算式。

第 43 页课件

试一试差一个 WHERE,差三行

执行
UPDATE s SET age = age + 1WHERE sno = 's2'
执行后的年龄
snosnage
同一条 UPDATE,差一个 WHERE,结果差了三行。

重 点

不加 WHERE 就是全表都改,改之前先用 SELECT 看一眼影响多少行。

上机做

上机第 8 题 改一行再改全表

44
第 5 章 · 第六节

用 Workbench 删除数据

选中要删的行,点删除按钮,再点 Apply。

第 44 页课件

重 点

界面删是一行一行选,命令行删是一条 WHERE 说了算。

上机做

上机第 11 题 删一条选课记录

想一想

界面上不小心选错了行,会有什么后果?

45
第 5 章 · 第六节

用 DELETE 删除表中数据

DELETE 删行,不加 WHERE 就把整张表清空。

第 45 页课件

分清楚

写法删掉什么
DELETE 加 WHERE符合条件的那几行
DELETE 不加 WHERE整张表的行

重 点

表结构还在,只是行没了。要连表一起删得用 DROP TABLE。

上机做

上机第 11 题 体验一次外键拦截

保山学院·人工智能教研室·曹鼎鼎