Oracle数据库SQL查询实验

需积分: 12 7 下载量 190 浏览量 更新于2024-09-09 收藏 19KB DOCX 举报
"这些SQL查询语句展示了在Oracle数据库环境中操作数据的基本方法,涉及了对供应商(S)、零件(P)、工程(J)和供应情况(SPJ)四个表的数据查询、联接、子查询以及更新操作。" 在这个实验代码中,我们可以看到以下几个Oracle数据库的关键知识点: 1. **基本查询**:例如,查询供应工程J1零件的供应商号码(SNO),这是通过简单的SELECT语句实现的,它涉及到表`spj`的单表查询。 2. **联接查询**:查询供应工程J1红色零件的供应商号码时,使用了`NATURAL JOIN`来联接`spj`和`p`表,通过`jno`和`pno`字段匹配数据。 3. **子查询**:查询没有使用天津供应商生产的红色零件的工程号,这里使用了子查询来获取满足条件的工程号,然后在外层查询中用`NOT IN`操作符排除这些工程号。 4. **多表联接**:查询使用供应商S1供应零件的工程号码,或者上海厂商供应的所有零件号码,以及使用上海产零件的工程名称,都涉及到多表联接,使用了`NATURAL JOIN`或`INNER JOIN`来连接多个表。 5. **条件过滤**:在查询中,经常使用`WHERE`子句来指定筛选条件,如供应商城市、零件颜色、工程号码等。 6. **数据更新**:将全部红色零件的颜色改为蓝色,使用了`UPDATE`语句,通过`WHERE`子句指定更新条件。 7. **行级别的数据操作**:将由S5供给J4的零件P6改为由S3供应,这个操作涉及到两步,首先通过`UPDATE`语句修改`spj`表中的供应商号码,然后删除旧的供应商记录,这需要用到`DELETE`语句。 8. **删除操作**:从供应商和供应情况两个表中删除供应商号为S2的记录,这演示了如何在关联表中删除数据,确保数据一致性。 9. **事务处理**:虽然没有明确写出,但在实际的数据库操作中,涉及多条DML(数据操纵语言)语句(如UPDATE和DELETE)可能需要包裹在一个事务中,以确保数据操作的原子性和一致性。 这些SQL查询和操作体现了Oracle数据库在数据查询、关联、过滤、更新和删除等方面的基本功能,对于理解和掌握SQL语言以及Oracle数据库的日常管理非常重要。在实际的数据库管理工作中,理解并熟练运用这些技巧能够帮助我们有效地管理和维护数据库系统。