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

表中数据的操纵

INSERT 插入、UPDATE 修改、DELETE 删除
本 节 知 识 点
  1. 24用 Workbench 添加、修改和删除数据
  2. 25用 INSERT 插入一行记录
  3. 26插入部分字段和多行记录
  4. 27用 UPDATE 修改表中数据
  5. 28用 DELETE 删除表中数据
24
第 5 章 · 第六节 · 课件第 39、42、44 页

用 Workbench 添加、修改和删除数据

在结果表格中直接添加、修改、删除,点 Apply 后才写入数据库。

课件第 39 页

分清楚

操作做法
添加在最后的空行中填写
修改双击单元格输入新值
删除选中行后点删除行按钮

重 点

点 Apply 之前,修改只在界面上,数据库中的数据还没有变。

25
第 5 章 · 第六节 · 课件第 40 页

用 INSERT 插入一行记录

INSERT 向表中插入一行,字段和值按顺序一一对应。

课件第 40 页

重 点

字符串和日期的值要加单引号,数字不加引号。

知道更多不写字段名时

要按建表时的字段顺序给出每个字段的值,个数不对会报 1136。

实 验

实验 2-4 插入数据

26
第 5 章 · 第六节 · 课件第 41 页

插入部分字段和多行记录

可以只给部分字段赋值,也可以一次插入多行。

课件第 41 页

练一练

age 定义为 NOT NULL 且没有默认值,插入时不给 age 值会怎样?
  1. A自动填 0
  2. B自动填 NULL
  3. C报错,不能插入
  4. D能插入,但有警告
答案 C

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

重 点

多行记录之间用逗号隔开,整条语句最后只有一个分号。

27
第 5 章 · 第六节 · 课件第 43 页

用 UPDATE 修改表中数据

UPDATE 修改已有的行,WHERE 指定修改哪些行。

课件第 43 页

试一试有没有 WHERE,结果不同

执行
UPDATE s SET age = age + 1WHERE sno = 's2'
学生表 s
snosnage
同一条 UPDATE,比较带不带 WHERE 的结果。

知道更多Workbench 报 1175

WHERE 没用到主键等索引字段就会报 1175,先执行 SET SQL_SAFE_UPDATES = 0;

实 验

实验 2-5 修改数据

28
第 5 章 · 第六节 · 课件第 45 页

用 DELETE 删除表中数据

DELETE 删除表中的行,不写 WHERE 会删除全部行。

课件第 45 页

分清楚

语句结果
DELETE … WHERE 条件删除满足条件的行
DELETE FROM 表名删除全部行,表还在
DROP TABLE 表名表和数据都删除

重 点

主表中被外键引用的行不能直接删除,要先删除从表中的相关行,否则报 1451。

实 验

实验 2-6 删除数据和表

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