SQL基础操作:INSERT, UPDATE, DELETE与NULL处理
39 浏览量
更新于2024-08-30
收藏 187KB PDF 举报
本资源是一份关于SQL基础操作的数据库作业,涵盖了INSERT、UPDATE、DELETE以及NULL值的使用。以下是各知识点的详细说明:
1. **INSERT操作**:
- 在【3.69】中,INSERT INTO `Student`语句用于向`Student`表中添加一个新学生元组,包括`Sno`(学号)、`Sname`(姓名)、`Ssex`(性别)、`Sdept`(系别)和`Sage`(年龄)等字段,如`('20121520', '星河', '男', 'IS', 18)`。这是明确指定每个属性列的插入方式。
- 【3.70】展示了另一种INSERT INTO `Student`的用法,仅指定了表名,值按列顺序依次给出,这里插入了学号、姓名和年龄,其他列默认取值。如果列的顺序与表中的顺序不一致,可能会导致数据错误。
2. **INSERT其他形式**:
- 【3.71】展示了插入一条选课记录的INSERT INTO `OSC`(课程选修表)示例。`VALUES('20121521', '1')`表示明确指定学号和课程号,如果未指定Grade列,其值默认为NULL。另一种写法`VALUES('20121521', '1', NULL)`明确指出了Grade的值为NULL。
3. **计算和INSERT INTO结合**:
- 【3.72】演示如何通过子查询计算每个系的平均年龄并插入到新的`Dept_age`表中。子查询`SELECT Sdept, AVG(Sage)`获取平均年龄,然后通过`INSERT INTO Dept_age`插入结果。
4. **UPDATE操作**:
- 【3.73】展示了如何使用UPDATE来修改特定学生的信息,如`UPDATE Student SET age = 22 WHERE Sno = '201215121'`,只更新符合条件的学生年龄。
- 【3.74】全局更新所有学生年龄,`UPDATE Student SET age = age + 1`,没有WHERE子句表示对所有学生进行操作。
- 【3.75】针对计算机科学系的学生,设置全体成绩为0,`UPDATE SC SET Grade = 0 WHERE Sno IN ("...")`,这里省略了具体的学号列表,但明确了操作的范围。
这些SQL命令是数据库管理的基础,熟练掌握它们对于数据增删改查至关重要。在实际应用中,需要确保遵循数据完整性规则,并且理解SQL语句中的各种选项和限制,以避免潜在的数据错误或异常。
2020-12-14 上传
2020-12-14 上传
2020-12-14 上传
2020-12-14 上传
2020-12-14 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
weixin_38656297
- 粉丝: 3
- 资源: 906
最新资源
- node-castv2-client:基于新(CASTV2)协议的Chromecast客户端
- Java下的大数据分析程序.zip
- satchel:组织中间件之间处理数据的过程
- Uplifting Tabs-crx插件
- nature-ui:Nature ui是基于模块化React的组件库,内置对tailwindcss的支持
- 华为最新S系列交换机 典型配置案.zip
- pokemon-php-level-2:宠物小精灵-php额外挑战
- Screen Grabber-开源
- 23秋季工程化C程序设计代码仓库,包括lab1-5的实验代码和实验报告
- Distributed-Web-Crawler:可扩展分布式Web爬网程序的Python实现
- QuineMcCluskey
- 【超全golang面试题合集+golang学习指南+golang知识图谱+入门成长路线】 一份涵盖大部分golang.zip
- ansible-sample:Ansible剧本样本
- processhistory-开源
- training
- FPGA实现均值滤波算法