专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)

2025-04-07
| 26页
| 165人阅读
| 0人下载
精品

内容正文:

专题七 数据更新 数据库原理与应用技术-MySQL 专题复习讲练测 河北科学技术出版社 掌握国家标准《机械制图》中有关图幅、比例、字体图线等基本规定。 考纲要求 一 (五)数据更新 1.掌握插入数据的语句:INSERT…VALUES、INSERT…SET、INSERT…SELECT; 2.掌握修改数据的语句:UPDATE…SET; 3.掌握删除数据的语句:DELETE FROM、TRUNCAE TABLE; 掌握带子查询的删除语句:DELETE FROM…WHERE…=(SELECT)。 知识点梳理 二 插入数据 语法格式: INSERT INTO table_name (column1, column2, ..., columnN) VALUES (value1, value2, ..., valueN), (valueA, valueB, ..., valueZ); ➽ INSERT...VALUES 知识点梳理 二 插入数据 ➽ INSERT...VALUES table_name 指的是你要插入数据的表名。 (column1, column2, ..., columnN) 是可选的列名列表,它指定了要插入数据的列。若省略该列表,插入的值必须与表中列的顺序和数量完全一致。 VALUES 后面跟着一个或多个用逗号分隔的行值列表,每个行值列表用括号括起来,代表要插入的一行数据。 数据类型匹配:插入的值的数据类型必须与表中对应列的数据类型相匹配。 知识点梳理 二 插入数据 INSERT INTO table_name SET column1 = value1, column2 = value2, ..., columnN = valueN; ➽ INSERT...SET 这种语法以键值对的形式指定要插入的数据,键是列名,值是要插入的数据。它更加灵活,不需要严格按照表中列的顺序插入数据。 使用场景:在动态插入数据时,比如从表单或其他程序中获取数据并插入数据库,INSERT...SET 会更方便,因为你可以根据实际情况灵活指定要插入的列和值。 知识点梳理 二 插入数据 ➽ INSERT...SET 知识点梳理 二 插入数据 INSERT INTO table_name (column1, column2, ..., columnN) SELECT columnA, columnB, ..., columnZ FROM source_table WHERE condition; ➽ INSERT...SELECT 此语句将 source_table 中满足 condition 的数据插入到 table_name 表中。SELECT 子句指定了要插入的数据列,这些列的数据类型和数量必须与 INSERT 语句中指定的列相匹配。 使用场景:常用于数据迁移、数据备份或者将一个表的部分数据复制到另一个表中。 知识点梳理 二 插入数据 ➽ INSERT...SELECT 知识点梳理 二 修改数据 UPDATE table_name SET column1 = value1, column2 = value2, ..., columnN = valueN WHERE condition; ➽ UPDATE...SET UPDATE 关键字用于指定要修改的表。 SET 子句用于指定要修改的列和新的值。 WHERE 子句是可选的,它用于指定修改的条件。如果省略 WHERE 子句,表中的所有行都会被修改。 数据更新逻辑:你可以使用表达式来更新列的值,例如对数值类型的列进行加减操作。 知识点梳理 二 修改数据 ➽ UPDATE...SET 知识点梳理 二 删除数据 DELETE FROM table_name WHERE condition; ➽ DELETE FROM DELETE FROM 用于从指定的表中删除行。 WHERE 子句是可选的,如果省略,表中的所有行都会被删除。 删除操作的影响:DELETE 语句是逐行删除数据的,并且会记录删除操作到日志中,因此对于大数据量的删除操作,性能可能会受到影响。 知识点梳理 二 删除数据 ➽ DELETE FROM 知识点梳理 二 删除数据 语法结构:TRUNCATE TABLE table_name; ➽ TRUNCATE TABLE TRUNCATE TABLE 用于快速删除表中的所有数据。它与 DELETE FROM table_name(无 WHERE 子句)的效果相同,但性能更高。 与 DELETE 的区别:TRUNCATE TABLE 是一个 DDL(数据定义语言)语句,它不会逐行删除数据,而是直接释放表所占用的存储空间,并且不会记录单独的删除操作,因此无法回滚。而 DELETE 是一个 DML(数据操作语言)语句,可以使用事务进行回滚。 知识点梳理 二 带子查询的删除语句 ➽ DELETE FROM...WHERE...=(SELECT) DELETE FROM table_name WHERE column = (SELECT column_from_subquery FROM another_table WHERE subquery_condition); 该语句结合了 DELETE 和子查询。子查询用于从另一个表中获取满足条件的值,然后 DELETE 语句根据这些值从 table_name 表中删除相应的行。 使用场景:当你需要根据另一个表中的数据来删除某个表中的行时,可以使用这种方式 知识点梳理 二 带子查询的删除语句 ➽ DELETE FROM...WHERE...=(SELECT) 限时练习 三 1. 若要将 table1 中 column1 列值为 'value1' 的所有行的 column2 列值更新为 'new_value',应使用的语句是( ) A. UPDATE table1 SET column2 = 'new_value' WHERE column1 = 'value1'; B. UPDATE table1 WHERE column1 = 'value1' SET column2 = 'new_value'; C. UPDATE SET column2 = 'new_value' FROM table1 WHERE column1 = 'value1'; D. UPDATE table1 column2 = 'new_value' WHERE column1 = 'value1'; 答案:A 解析:UPDATE 语句的正确语法是 UPDATE table_name SET column = value WHERE condition;,A 选项符合该语法规则。 限时练习 三 2. 假设两表结构相同,以下可以将 table2 中所有数据插入到 table1 中的语句是( ) A. INSERT INTO table1 SELECT * FROM table2; B. INSERT INTO table1 VALUES SELECT * FROM table2; C. INSERT INTO table1 SET SELECT * FROM table2; D. INSERT INTO table1 UPDATE SELECT * FROM table2; 答案:A 解析:使用 INSERT...SELECT 语句可以将一个表的数据插入到另一个表中,A 选项语法正确。 限时练习 三 3. 若要更新 products 表中 price 列的值,将所有价格乘以 1.1,应使用的语句是( ) A. UPDATE products SET price = 1.1; B. UPDATE products WHERE price = price * 1.1; C. UPDATE products SET price = price * 1.1; D. UPDATE products price = price * 1.1; 答案:C 解析:使用 UPDATE...SET 语句更新列的值,可使用表达式对列进行计算。 限时练习 三 4.对于 UPDATE 语句,如果省略 WHERE 子句,会发生的情况是( ) A. 不会更新任何行 B. 会更新表中所有行 C. 会报错 D. 只会更新第一行 解析:删除满足特定条件的行使用 DELETE FROM...WHERE 语句,A 选项符合语法规则。 答案:B 限时练习 三 5. 若要将 books 表中 author 列值为 'John Doe' 的行的 publication_year 列更新为 2025,应使用的语句是( ) A. UPDATE books SET publication_year = 2025 WHERE author = 'John Doe'; B. UPDATE books WHERE author = 'John Doe' SET publication_year = 2025; C. UPDATE books SET author = 'John Doe', publication_year = 2025; D. UPDATE books publication_year = 2025 WHERE author = 'John Doe'; 答案:A 限时练习 三 6.若要将 table6 中所有数据复制到 table7 中,应使用 INSERT INTO table7 VALUES SELECT * FROM table6;。( ) 答案:错误 解析:正确的语句是 INSERT INTO table7 SELECT * FROM table6;,不需要 VALUES 关键字。 限时练习 三 7.写出将 products 表中 product_id 为 5 的产品的 price 列更新为 29.99 的命令。 答案: UPDATE products SET price = 29.99 WHERE product_id = 5; 限时练习 三 8.给出将 orders 表中所有 status 为 'Processing' 的订单的 status 更新为 'Shipped' 的命令。 答案: UPDATE orders SET status = 'Shipped' WHERE status = 'Processing'; 限时练习 三 9.请给出将 customers 表中 country 为 'USA' 的所有客户的 credit_limit 增加 200 的命令。 答案: UPDATE customers SET credit_limit = credit_limit + 200 WHERE country = 'USA'; 内容小结 四 谢谢 $$

资源预览图

专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)
1
专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)
2
专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)
3
专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)
4
专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)
5
专题七 数据更新(课件)-《数据库原理与应用技术》高考备考讲练测(河北省)
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。