考点11 数据更新《数据库原理与应用技术-MySQL》河北省(对口招生)计算机类 知识点讲解

2026-08-26
| 7页
| 60人阅读
| 2人下载
精品

内容正文:

河北省(计算机类)对口招生 《数据库原理与应用技术-MySQL》复习讲义 模块3 MySQL数据库管理 考点 11 数据更新 【考纲要求】 1. 掌握插入数据的语句:INSERT.VALUES、INSERT … SET、INSERT … SELECT; 2. 掌握修改数据的语句:UPDATE...SET; 3. 掌握删除数据的语句:DELETE FROM 、TRUNCATE TABLE; 4. 掌握带子查询的删除语句:DELETE FROM…WHERE…=(SELECT)。 【知识网络】 【知识和技能要点】 一、插入数据 INSERT(向表中添加新记录) MySQL 三种插入语法:INSERT … VALUES、INSERT … SET、INSERT … SELECT 1. INSERT … VALUES 语法 (1) 语法格式: ①单行插入 INSERT INTO 表名(字段1,字段2,字段3) VALUES(值1,值2,值3); ②多行插入,一次插入多条记录 INSERT INTO 表名(字段1,字段2) VALUES (值1,值2), (值3,值4); (2) 说明 ①INTO可以省略,建议书写,可读性更好; ②括号中字段列表可以省略,省略时VALUES 里面的值必须和表字段顺序、数量完全一致; ③字符串、日期常量需要使用英文单引号包裹;数值类型不需要引号; ④字段与值的数量、顺序、数据类型要一一对应。 2. INSERT … SET 语法 (1) 语法格式: INSERT INTO 表名 SET 字段1=值1, 字段2=值2, 字段3=值3; (2)说明 ①以字段=值的形式书写,适合明确指定部分字段插入; ②只支持单行插入,不能一次性写多条记录; ③没有赋值的字段,如果设置了默认值则填入默认值,允许为 NULL 则填 NULL。 3. INSERT … SELECT 语法 (1) 语法格式 INSERT INTO 目标表名(字段列表) SELECT 字段列表 FROM 源表名 [WHERE 条件]; (2) 说明 ①SELECT 查询返回的字段数量、数据类型,必须和目标表插入字段一一对应; ②可以实现表之间数据复制; ③不会复制原表约束、索引,只复制查询出来的行数据。 2、 修改数据 UPDATE … SET 1. 语法格式 UPDATE 表名 SET 字段1=新值1, 字段2=新值2 [WHERE 条件表达式]; 2.说明 ①SET后面写字段=新值,多个修改字段之间用英文逗号分隔; ②WHERE 非常关键:用来限定哪些记录要被修改; ③如果省略 WHERE 条件,会更新整张表的所有行,所有记录全部被修改; ④字符串、日期值加英文单引号; ⑤只修改字段数据,不会改变表结构。 3、 删除数据 1. DELETE FROM 语句:删除表中的部分或者全部行数据 (1) 语法格式 ①删除满足条件的部分记录 DELETE FROM 表名 WHERE 条件表达式; ②省略WHERE,删除表全部数据 DELETE FROM 表名; (2) 说明 ①WHERE 限定删除哪些行;省略 WHERE 会删除整张表的所有数据; ②DELETE 属于 DML 语句,可以配合子查询; ③如果表有自增 AUTO_INCREMENT,DELETE 删除全部数据之后,自增计数器不会重置,下一条新增数据继续接着原来编号往下自增。 2. 带子查询的 DELETE 删除语句 (1) 语法格式 DELETE FROM 表名 WHERE 字段 = (SELECT 字段 FROM 另一张表 WHERE 条件); 3. TRUNCATE TABLE 清空数据表全部数据 (1) 语法格式: ①TRUNCATE TABLE 表名; ②TABLE关键字可以省略:TRUNCATE 表名; (2) 说明 ①TRUNCATE只能清空整张表全部数据,不能加 WHERE 条件,无法删除部分行; ②执行之后,AUTO_INCREMENT 自增计数器重置,自增编号重新从 1 开始; ③属于 DDL 语句;速度比 DELETE 清空全表更快; ④只清空行数据,数据表结构、字段、约束、索引仍然保留,不会删除表。 【练习题】 一、填空题 1.UPDATE 语句中,多个待修改字段之间,使用英文________分隔。 2.TRUNCATE 语句________(填支持 / 不支持)WHERE 条件,无法删除部分行。 3.TRUNCATE TABLE 清空数据表,数据表的表结构________(填会 / 不会)被删除。 4.带有 AUTO_INCREMENT 自增字段的表,执行 DELETE FROM 清空全表,自增计数器________重置。(填会 / 不会) 5.DELETE WHERE 条件中使用等号进行判断,内层子查询只能返回________个值,否则执行报错。 二、选择题 1.MySQL 中,能够实现一次插入多条记录的语法是( ) A. INSERT…SET B. INSERT…VALUES C. UPDATE…SET D. TRUNCATE 2.INSERT…SET 语法的特点是( ) A. 支持一次性插入多条记录 B. 只支持单行数据插入 C. 可以直接复制其他表的数据 D. 属于 DDL 语句 3.使用 INSERT…SELECT 语句,下面说法正确的是( ) A. 会复制源表的索引和约束 B. 目标表字段数量、类型需要与 SELECT 返回结果一一对应 C. 可以添加 WHERE 修改表结构 D. 只能复制表全部数据,不能加 WHERE 条件过滤 4.在 UPDATE 语句中,如果省略 WHERE 条件,会产生什么效果( ) A. 不修改任何数据 B. 修改表中全部记录 C. 语法报错无法执行 D. 只修改第一条记录 5.TRUNCATE TABLE 语句的作用是( ) A. 删除数据表以及全部结构 B. 清空表中全部行数据,保留表结构 C. 删除表中满足 WHERE 条件的部分记录 D. 修改表字段数据 6.TRUNCATE 语句,关于 WHERE 条件说法正确的是( ) A. 可以书写 WHERE 删除部分记录 B. 不能使用 WHERE 条件,只能清空全表 C. WHERE 条件必须配合子查询使用 D. 只能搭配 WHERE IS NULL 使用 7.一张带有 AUTO_INCREMENT 自增字段的表,执行 DELETE FROM 表名清空全部数据之后,自增计数器会( ) A. 重置,重新从 1 开始 B. 不会重置,继续向下编号 C. 自动删除自增属性 D. 报错,自增失效 8.使用 INSERT 语句,若省略字段列表,则 VALUES 中的值要求是( ) A. 值的数量可以少于表字段数量 B. 值必须和表字段顺序、数量完全一致 C. 只需要写主键字段对应的值 D. 只能插入数字类型数据 9.DELETE FROM student WHERE sid=(SELECT sid FROM score WHERE score=90); 内层子查询返回多行记录,该 SQL 会( ) A. 正常执行删除所有匹配行 B. 语法执行报错 C. 自动删除第一行匹配数据 D. 忽略子查询直接清空表 10.关于 INSERT…SELECT,下面说法错误的是( ) A. SELECT 部分可以使用 WHERE 条件过滤源表数据 B. 可以实现不同表之间数据复制 C. 会复制源表的约束与索引 D. 目标表需要提前已经存在 三、判断题 1.INSERT…VALUES 语法既可以实现单行插入,也可以实现一次性多行插入。() 2.INSERT…SET 语法支持一次性插入多条记录。() 3.使用 INSERT…SELECT,会把源表的索引、约束一同复制到目标表。() 4.INSERT 语句省略字段列表时,VALUES 里面的值顺序可以随意书写。() 5.UPDATE 语句中,SET 子句用来书写要修改的字段和对应的新值。() 6.DELETE FROM 语句配合 WHERE 条件,可以只删除满足条件的部分记录。() 7.DELETE 语句 WHERE 条件中可以嵌套子查询,实现带子查询条件删除。() 8.TRUNCATE TABLE 执行完成之后,数据表本身会被删除。() 9.TRUNCATE TABLE 关键字中的 TABLE 可以省略,直接写 TRUNCATE 表名。() 10.DELETE FROM 表名 WHERE 字段 =(子查询),内层子查询返回多行结果时,使用等号会报错。() 4、 命令题 有两张表: student(学生表):sid 学号、sname 姓名、class 班级、score 分数 temp_stu(临时学生表):sid、sname、class 1.一次性向 student 表插入两条数据: 学号105,姓名王亮,分数88;学号106,姓名赵小明,分数92 2. 将 temp_stu 表中所有“1班”的学生数据,批量复制插入到 student 表(只复制sid、sname、class)。 3. 将学号为105的学生分数修改为95,班级修改为“1班”。 4. 删除student表中,与temp_stu表中存在同名(sname)的所有学生记录,使用子查询完成。 5. 清空 student 表全部数据,不重置自增编号; 【答案】 一、填空题 1. 逗号 2. 不支持 3. 不会 4. 不会 5. 一 二、选择题 1. B 2. B 3. B 4.B 5. B 6. B 7.B 8.B 9. B 10. C 三、判断题 1. √ 2.× 3.× 4. × 5. √ 6. √ 7. √ 8. × 9. √ 10. √ 5、 命令题 1.INSERT INTO student(sid,sname,score) VALUES(105,'王亮',88),(106,'赵小明',92); 2.INSERT INTO student(sid,sname,class) SELECT sid,sname,class FROM temp_stu WHERE class='1班'; 3.UPDATE student SET score=95,class='1班' WHERE sid=105; 4.DELETE FROM student WHERE sname IN (SELECT sname FROM temp_stu); 5.DELETE FROM student; 原创精品资源学科网独家享有版权,侵权必究 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

考点11 数据更新《数据库原理与应用技术-MySQL》河北省(对口招生)计算机类 知识点讲解
1
考点11 数据更新《数据库原理与应用技术-MySQL》河北省(对口招生)计算机类 知识点讲解
2
考点11 数据更新《数据库原理与应用技术-MySQL》河北省(对口招生)计算机类 知识点讲解
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。