SQL实践:INSERT, UPDATE, DELETE与NULL操作及视图创建

1 下载量 10 浏览量 更新于2024-08-30 收藏 494KB PDF 举报
本篇SQL练习主要围绕数据更新、空值处理以及视图操作展开,涵盖了基础的数据库管理知识。以下是详细的知识点总结: 1. **数据更新** - **插入数据(INSERT)**: 学习了两种数据插入方式: - 插入元组:使用`INSERT INTO [表名] ([列1, ..., 列n]) VALUES ([值1, ..., 值n])`,支持一次插入多个元组,确保值的数量和类型与表列匹配。 - 插入子查询结果:通过嵌套的`INSERT INTO [表名] ([列1, ..., 列m]) 子查询`,要求子查询的SELECT子句目标列与INTO子句列对应。 2. **修改数据(UPDATE)**: - 修改单个元组:`UPDATE 表名 SET [列1 = 新值1, ..., 列n = 新值n] WHERE 条件`,如例3.73所示,通过`WHERE`子句指定要修改的特定记录。 - 修改多个元组:`UPDATE 表名 SET 列 = 列 + 常量`,如例3.74,对所有符合条件的记录进行批量更新。 - 带子查询的修改:如例3.75,使用子查询来指定一组特定记录,如设置特定系科的所有学生成绩为零。 3. **空值的处理(NULL)**: - 空值的产生和判断:在SQL中,NULL表示不确定或不存在的值,通过`IS NULL`或`IS NOT NULL`进行判断。 - 空值的约束条件:在创建表时,可以设置列的NOT NULL约束来确保该列不允许有NULL值。 4. **视图(VIEW)**: - 定义视图:视图是从一个或多个表中导出的虚拟表,使用`CREATE VIEW 视图名 AS SELECT ...`语句。 - 查询视图:使用标准的`SELECT`语句来查询视图,视图的结果基于其定义时的SQL查询。 - 更新视图:视图的更新通常受制于视图的基础表,如果视图是简单视图(不包含计算列),则可以直接更新;如果是复杂视图,则可能需要根据实际实现来决定是否能直接更新。 5. **完整性约束**: RDBMS在执行INSERT和UPDATE语句时,会检查是否符合实体完整性、参照完整性和用户定义的完整性规则,确保数据的正确性。 通过这些练习,学生能够巩固对SQL基础操作的理解,包括数据的增删改查以及空值处理,同时了解到视图在数据库设计中的作用,提高数据管理的能力。