数据库实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

合肥工业大学实验报告一

课程名称:数据库系统原理及应用学号: ******** 姓名:***

专业班级:电子商务09-1班

指导教师:***

二零一一年十月

一、实验目的:

(1)熟练掌握数据更新语句,灵活地操作插入数据、修改数据和删除数据;

(2)熟练掌握关系数据库中的完整性概念的应用;

(3)了解数据录入的方法和过程。

(4)掌握单表查询的基本方法;

(5)掌握连接查询的基本方法;

(6)熟练掌握以下练习,并进行以下各类查询:

①选择表中的若干列、查询全部列、查询经过计算的值;

②选择表中的若干元组,即消除取值重复的行与查询满足指定条件的元组(包

括:比较大小、确定范围、确定集合、字符匹配、涉及空值和多种条件查询);

③对查询结果排序;

④使用集函数;

⑤对查询结果分组

(7)熟练掌握以下练习,并进行下列各类连接查询:

①等值与非等值连接查询;

②自身连接;

③外连接;

④复合条件连接;

(8)掌握嵌套查询的基本方法;

(9)掌握集合查询的基本方法;

(10)熟练掌握查询视图操作

(11)熟练掌握更新视图操作

(12)熟练关系的完整性概念,领会视图的用途

(13)练习以下各类查询:

①带有IN谓词的子查询;

②带有比较运算符的子查询;

③带有ANY或ALL谓词的子查询;

④带有EXISTS谓词的子查询;

⑤视图查询与更新操作;

二、实验要求:

(1)为了便于程序正确性测试,需要对自己建立起来的数据表录入一些模拟数据(模拟数据是指符合数据格式要求的假数据),然后按照教材中结构化查询语言SQL章节例题和习题自己组织SQL语句:

(2)设计的SQL程序应该涵盖数据更新操作的全部内容不,包括插入、修改、删除;

(3)综合运用SQL语句实现数据插入、修改、删除等操作的综合运用能力。

(4)按照SQL语言编程要求,实现各类查询和检索操作;

(5)利用后台的SQL平台环境,编程验证数据库的控制保护功能。

(6)将查询视图命令等价改写为对数据表的查询操作命令,利用SQL编程设计完成并进行效率分析。

三、实验内容:

(1)根据以下给定的数据表信息分别对student, course, score, teacher, teching 表进行数据插入和修改,以完成给定的数据录入,同时要求输入班级同学名录模拟客观真实情况,给student、score表添加30条以上记录,以便以后查询应用方便。

Student表:

SQL语句插入的形式加入score表中。该题用以验证、理解和掌握关系模型的完整性规则;

(3)求每门课的平均成绩,并把结果存入average表;

(4)将学生“马丽鹃”的出生日期改为“1982.8.20”;

(5)将所有学生的zipcode属性列值填补上;

(6)将average表中的所有课程的平均成绩置零;

(7)删除average表中的课程号为‘c007’的平均成绩记录;

(8)删除所有average表中平均成绩记录;

(9)建立一个临时学生信息表(tstudent),删除该表中的学号前六位为‘001011’的所有学生记录。

(10)查询全体学生的学号与姓名;

(11)查询全体学生的学号、姓名、所属班级;

(12)查询全体学生的详细记录;

(13)查询全体学生的姓名及其年龄;

(14)查询全体学生的姓名、出生年份;

(15)查询所有修过课的学生的学号;

(16)查询“信管系0101”班全体学生名单;

(17)查询查询所有年龄在27岁以下的学生姓名及其年龄;

(18)查询考试成绩有不及格的学生的学号;

(19)查询年龄在15至28岁之间的学生姓名、班级和年龄;

(20)查询年龄不在15至28岁之间的学生姓名、班级和年龄;

(21)查询“信管系0101”和“电商系0102”班的学生的姓名和班级信息;

(22)查询既不是“信管系0101”也不是“电商系0102”班的学生的姓名和班级信息;

(23)查询学号为“011113104”的学生的详细情况;

(24)查询学号以“0111”打头的学生信息;

(25)查询所有姓“张”学生的学号、姓名、性别、年龄;

(26)查询名字中第二个字有“海”字的学生的学号、姓名、性别、年龄;

(27)查询所有不姓“刘”学生的姓名;

(28)查询课程号以“C”开头的最后两个字母为“05”的课程号和课程名;

(29)某些学生选修某门课程后没有参加考试,所以有选修课记录,但没有考试成绩,试查找缺少考试成绩的学生和相应的课程号;

(30)查找全部有成绩记录的学生学号、课程号;

(31)查找“电商系0101”班年龄在27岁以下的学生学号、姓名;

(32)查找选修了“C001”号课程的学生学号及其成绩,查询结果按分数降序排序;

(33)查询全体学生情况,查询结果按所在班级升序排列,对同一班级中的学生按年龄降序排列;

(34)查询学生总人数;

(35)查询选修了课程的学生人数;

(36)在所有课程中查询最高分的学生学号和成绩;

(37)查询学习“C001”课程的学生最高分数;

(38)计算各个课程号与相应的选课人数;

(39)查询“电商系0102”班选修了两门课程以上的学生学号、姓名;

(40)自然连接student和score表;

(41)使用自身连接查询每一门课程的间接先行课(即先行课的先行课)

(42)使用复合条件连接查询选修“c001”号课程且成绩在90分以上的所有同学;

(43)使用复合条件连接查询每个学生选修的课程名及其成绩;

(44)查询选修了全部课程的学生;

(45)查询至少选修全部学分数为4个学分的课程的学生的学号、姓名;

(46)查询所有选修了C001号课程的学生学号、姓名;

(47)查询选修了课程C001或c007的学生学号、姓名;

(48)查询“会计系0102”班的学生及年龄不大于27岁(现有年龄)的学生;

(49)查询既选修了课程C001又选修了课程c007的所有学生学号、姓名;

(50)查询选修了课程名为“数据库原理”的学生的学号、姓名、性别、年龄;

(51)查询其他班中比“信管系0101”班所有学生年龄都小的学生名单;

(52)查询与“齐振国”在同一个班学习的学生学号、姓名、性别、年龄;

(53)建立“信管系0101”班学生的视图,定义视图名为“info_student1”;

相关文档
最新文档