SQL查询深入:嵌套查询与数据库操作

需积分: 10 1 下载量 131 浏览量 更新于2024-07-12 收藏 1.5MB PPT 举报
"嵌套查询续-数据库幻灯片" 这篇资源主要讲解了数据库中的嵌套查询以及SQL的相关知识,特别是在SQLServer环境下的操作。首先,嵌套查询是指在一个查询语句内部包含另一个查询语句的情况,这在处理复杂的数据筛选和关联时非常常见。 在给出的例子中,我们首先看到一个简单的查询: ```sql select * from sc where cno = '1' ``` 这个查询用于获取所有课程号为1的学生分数记录,并将其结果称为tmpT。然后,我们使用这个tmpT作为子查询来与student表进行关联,以获取对应学生的名字: ```sql select sname from student, (select * from sc where cno = '1') tmpT where student.sno = tmpT.sno ``` 这个查询返回了在课程1中注册的所有学生的姓名。接着,我们进一步扩展查询,不仅获取学生的姓名,还获取他们对应的分数: ```sql select sname, tmpT.grade from student, (select * from sc where cno = '1') tmpT where student.sno = tmpT.sno ``` 这个查询的结果展示了学生姓名和他们在课程1中的成绩。 此外,资源也提到了SQLServer的安装、启动和身份验证。安装SQLServer可以通过配置工具中的SQLServerConfigurationManager完成,而启动则通过SQLServerManagementStudio。SQLServer支持两种身份验证模式:Windows身份验证和SQLServer身份验证。 在数据库管理方面,SQLServer有四个主要的系统数据库: 1. master数据库:存储整个SQLServer系统的信息,包括所有的数据库、登录账户等。 2. tmpdb数据库:用于临时表和临时存储,满足短暂的数据需求。 3. model数据库:创建用户数据库时的模板,所有新建的数据库都基于此模板。 4. msdb数据库:在SQLServer代理调度任务和警报时使用。 创建数据库的SQL语句示例如下: ```sql create database test on (name=testdata, filename='e:\db\td.mdf') log on (name=testlog, filename='e:\db\tdlog.ldf') ``` 这条命令会创建一个名为test的数据库,数据文件在'e:\db\td.mdf',日志文件在'e:\db\tdlog.ldf'。使用数据库则通过`use`命令,如`use new_db`。 数据库的维护包括修改数据文件大小和重命名数据库等操作。例如,增加数据库new_db的数据文件大小可以这样做: ```sql alter database new_db modify file (name=new_db, size=15mb) ``` 而重命名数据库new_db为old_db,可以使用存储过程`sp_rename`: ```sql exec sp_rename 'new_db', 'old_db' ``` 这个资源涵盖了嵌套查询的使用、SQLServer的基本管理和维护,以及SQL语句创建和修改数据库的方法,是数据库管理和开发人员的重要参考资料。