数据库实验题:数据表操作与视图创建

需积分: 9 6 下载量 177 浏览量 更新于2024-09-15 收藏 5KB TXT 举报
本资源是一份关于数据库实验题的资料,主要涵盖了SQL语言的基本操作和视图创建。以下是详细的知识点解析: 1. 表结构设计: - 实例中的数据库涉及三个主要表:`student`, `course`, 和 `sc`。 - `student`表用于存储学生信息,包括学号(sno)、姓名(sname)、性别(sex)、年龄(sage)和部门(sdept)。表结构中添加了新的字段`_entrance`和`classtime`。 - `course`表用于存储课程信息,包括课程号(cno)、课程名(cname)、课程编号(cpno)和学分(ccredits),并设置了外键约束与`student`表和自身之间的关系。 - `sc`表是学生选课表,包含学号、课程号以及成绩(grade),并设置了级联删除和更新规则,确保数据一致性。 2. 数据库操作: - `alter table`语句用来修改表结构,如添加新字段和调整表的完整性。 - `drop table`语句用于删除表,但需谨慎,因为有`restrict`和`cascade`选项,前者限制删除,后者则会删除依赖的数据。 3. 索引和视图: - 创建了三个独特的索引:`stuno` on `student(sno)`, `coucnoon` on `course(cno)`, 和 `scnoonsc` 具体按升序(sno asc)和降序(cno desc)。 - 视图的创建是数据库设计的重要部分,如`csv`视图用于查询特定部门的学生信息,`jsgv`视图则显示指定部门学生选择的课程及其成绩。 4. 查询与筛选: - SQL查询技巧被应用于获取数据,如`csv`视图筛选出1983年前入学的学生信息,`jsgv`视图则用于查找特定条件下的学生选课情况,如所有1983年入学学生所选的课程和成绩。 - 最后一个查询(未给出)是根据特定条件筛选出选修3门及以上课程的学生的学号。 这份数据库实验题涉及到了SQL基础操作,包括表的创建、修改、索引的建立,以及如何通过视图进行数据过滤和汇总。对于学习和理解数据库系统、SQL语法以及优化查询性能都是十分有益的。通过这些实践,可以提升编程技能,加深对数据库理论的理解。