实验一 关系数据库标准语言SQL 下载本文

内容发布更新时间 : 2024/5/17 12:56:58星期一 下面是文章的全部内容请认真阅读。

《数据库技术》实验报告

实验一 关系数据库标准语言SQL

班级: 姓名: 学号: 任课教师:

【实验目的】

在给定的关系数据库管理系统Microsoft SQL Server环境下,通过实验学生能够: 1、MS SQL SERVER认识及其环境熟悉,了解T-SQL对标准SQL的扩充。 2、掌握T-SQL环境下数据定义包括数据库、基本表、视图、索引定义。 3、掌握T-SQL环境下数据操纵包括数据插入、删除、修改。 4、掌握T-SQL环境下数据查询及其各种变化。

实验教师: 上机时间:

【实验性质】

验证性实验(学时数:4H) 【实验内容】

1、数据定义、数据操纵、数据查询语句。 (1)创建数据库,置为当前数据库; (2)创建表(参看表结构),包括主码、外码及其它完整性约束;

Student表结构 列名 Sno Sname Ssex Sage Sdept Spec 说明 学号 姓名 性别 年龄 所在系 专业 数据类型 定长字符串,长度为7 定长字符串,长度为10 定长字符串,长度为2 微整形(tinyint) 不定长字符串,长度为20 定长字符串,长度为10

Course表结构 列名 Cno Cname Ccredit 说明 课程号 课程名 学分 数据类型 定长字符串,长度为10 不定长字符串,长度为20 小整数(smallint) 1

约束 主码 非空 取’男’或’女’ 取值15~45 默认为’计算机系’ 约束 主码 非空 取值大于0 《数据库技术》实验报告 Semster Periods Property 学期 学时数 课程性质 小整数(smallint) 小整数(smallint) 定长字符串,长度为4 SC表结构 取值大于0 取值大于0 列名 Sno Cno Grade --Student表 --Course表 --SC表 说明 学号 课程号 成绩 数据类型 定长字符串,长度为7 定长字符串,长度为10 小整数(smallint) 约束 主码,引用Student的外码 主码,引用Course的外码 取值0~100

(3)插入数据;说明:以下为样例数据,请自行补充完整插入数据代码。

('9512101','李勇','男',19,'计算机系','软件工程') ('9512102','刘晨','男',20,'计算机系','软件工程') ('9512103','王敏','女',20,'计算机系','计算机应用') ('9521101','张立','男',22,'信息系','财务管理') ('9521102','吴宾','女',21,'信息系','财务管理') ('9521103','张海','男',20,'信息系','财务管理') ('9531101','钱小平','女',18,'数学系','组合数学') ('9531102','王大力','男',19,'数学系','模糊数学') ('c01','计算机文化学',3,1,30,'选修') ('c02','VB',2,3,45,'必修') ('c03','计算机网络',4,7,45,'必修') ('c04','数据库基础',6,6,35,'必修') ('c05','高等数学',8,2,30,'必修') ('c06','数据结构',5,4,35,'必修') ('9512101','c01',90) ('9512101','c02',86) 2

《数据库技术》实验报告 ('9512101','c06',null) ('9512102','c02',78) ('9512102','c04',66) ('9521102','c01',82) ('9521102','c02',75) ('9521102','c04',92) ('9521102','c05',50) ('9521103','c02',68) ('9521103','c06',null) ('9531101','c01',80) ('9531101','c05',95) ('9531102','c05',85)

(4)完成各种数据查询; 1、查询学生选课表中的全部数据 答: 2、查询计算机系学生的姓名、年龄 答: 3、查询成绩在70-80分之间的学生的学号、课程号和成绩 答: 4、查询计算机系年龄在18-20岁之间且性别为“男”的学生的姓名和年龄 答: 5、查询“C01”号课程成绩最高的分数 答: 6、查询计算机系学生的最大年龄和最小年龄 答: 7、统计每个系的学生人数 答: 8、统计每门课程的选课人数和考试最高分 答: 9、统计每个学生的选课门数和考试总成绩,并按选课门数的递增顺序显示结果 答: 10、查询总成绩超过200分的学生,要求列出学号、总成绩 答: 11、查询选修了 “C02”号课程的学生的姓名和所在系 答: 12、查询成绩在80分以上的学生的学号、课程号和成绩,并按成绩的降序排列结果 答: 13、查询哪些课程没有人选修,要求列出课程号和课程名 答: 14、查询选修了“C01”号课程的学生的姓名和所在系 答: 15、查询数学系成绩在80分以上的学生的学号、姓名 答: 3

《数据库技术》实验报告 16、查询选修了“数据库基础”的学生的学号、姓名 答: 17、删除选课成绩低于50分的学生的选课记录 答: 18、将所有选修了“C01”号课程的学生的成绩加10分 答: 19、将计算机系所有选修了“计算机文化学”课程的学生的成绩加10分 答: (5)定义视图并完成查询; 写出满足下述条件的SQL语句。 (1)创建计算机系学生的视图,包括学号、姓名。以此查询计算机系学生姓名。 答: (2)创建查询每个学生的平均成绩的视图,要求列出学生学号及平均成绩 答: (3)创建查询每个学生的选课学分的视图,要求列出学生学号及总学分 答:

【实验总结】

请根据实验内容谈谈你对本次实验的收获、感想,或提出你对实验内容的建议等等。

批改教师评语: 实验报告成绩: 批改教师签字 批改时间:

4