数据库原理实验报告.docx

上传人:jian****018 文档编号:8619276 上传时间:2020-03-30 格式:DOCX 页数:8 大小:52.61KB
返回 下载 相关 举报
数据库原理实验报告.docx_第1页
第1页 / 共8页
数据库原理实验报告.docx_第2页
第2页 / 共8页
数据库原理实验报告.docx_第3页
第3页 / 共8页
点击查看更多>>
资源描述
数据库原理 实 验 报 告 学号:08133310 姓名:高梦蝶 班级:计算机科学与技术13-4班指导教师:闫秋艳 实验一一、 实验内容及要求1.使用SQL语句建立学生管理系统相关的表,同时完善各表的相关完整性约束。 学院(学院代码,学院名称) 学生(学号,姓名,性别,学院代码) 教师(教师号,教师姓名,学院代码) 课程(课程号,课程名,学时) 学习(学号,课程号,成绩) 开课(教师号,课程号)2.对各表进行增加、删除、修改属性操作3.建立索引4.删除表操作5.利用ACCESS完善表的数据内容二、实验目的熟练掌握SQL的各种数据定义功能,包括 1.定义表的功能,包括主码和外码的定义 2.修改表的定义功能,包括增加属性,删除属性,修改属性类型 3.建立和删除索引操作,理解索引的作用 4.删除表功能三、实验步骤及运行结果1. 使用SQL语句建立学生管理系统相关的表 1.学院表 CREATE TABLE 学院 (学院代码 CHAR(8), PRIMARY KEY, 学院名称 CHAR(8); 2.学生表 CREATE TABLE 学生 (学号 CHAR(8), PRIMARY KEY, 姓名 CHAR(8), 性别 CHAR(2), 学院代码 CHAR(8),FOREIGN KEY (学院代码) REFERENCES 学院(学院代码);3.教师表 CREATE TABLE 教师 (教师号 CHAR(8), PRIMARY KEY, 教师姓名 CHAR(4), 学院代码 CHAR(8),FOREIGN KEY (学院代码) REFERENCES 学院(学院代码);4.课程表 CREATE TABLE 课程 (课程号 CHAR(8), PRIMARY KEY, 课程名 CHAR(15), 学时 SMALLINT); 5.学习表 CREATE TABLE 学习 (学号 CHAR(8), 课程号 CHAR(8), 成绩 SMALLINT,PRIMARY KEY(学号,课程号), FOREIGN KEY(学号)REFERENCES 学生(学号), FOREIGN KEY (课程号)REFERENCES 课程(课程号); 6.开课表 CREATE TABLE 开课 (教师号 CHAR(8), 课程号 CHAR(8), PRIMARY KEY(教师号,课程号), FOREIGN KEY(教师号)REFERENCES 教师(教师号), FOREIGN KEY(课程号)REFERENCES 课程(课程号); 3.建立索引CREATE UNIQUE INDEX STU_IDX_SNO 学生(学号);CREATE UNIQUE INDEX COU_IDX_CNO 课程(课程号);CREATE UNIQUE INDEX SC_IDX_SNO_CNO ON 学习(学号ASC,课程号DESC);5利用ACCESS完善各表的内容四、实验体会 通过这次试验,我对SQL语句掌握的更加熟练了,能独立在ACCESS中建立,删除各表,并且能对表进行插入修改等基本操作,可以按要求建立索引.我还对表与表之间的关系有了更进一步的了解,认识到主键,外码在表中的意义.另外我对ACCESS的各个界面也更加熟悉,能够自如的运用其中的各个工具.但是,实验的开始,我也遇到了很多问题,经常有拼写错误,中英文的切换还有遗漏符号等问题,通过反复的练习,我终于能够更加准确,迅速的完成各项要求. 实验二一、使用SQL语句进行各种查询1、简单查询2、复杂查询3、嵌套查询4、使用SQL和ACCESS结合完成一些复杂的统计具体查询要求1求选修了老师“王刚”开课课程且成绩在90分以上的学生姓名、课程名称和成绩;(姓名,课程名,成绩)2求选修了“王刚”老师所授全部课程的学生姓名和学院名称;(姓名,学院名称)3求没有选修课程“软件工程”的学生学号和姓名;(学生学号,姓名)4求至少选修了两门课程的学生学号;(学号)5求课程“经济学”不及格学生姓名和考试成绩;(姓名,成绩)6求至少选修了与学号“T06” 同学选修的课程相同的学生学号;(学号)7求至少选修了“C3,C4”两门课程的学生姓名和学院名称;(姓名,学院名称)8查询“王石”同学没有选修的课程号和课程名; (课程号,课程名)9查询没有被任何学生选修的课程的课程号;(课程号)10求选修了全部课程的学生姓名;(姓名)11查询各学院课程“经济学”的平均分,并按照成绩从高到低的顺序排列;(学院名称,平均分)12查询选修课程“经济学”的学生姓名和所在院系,结果按各院系排列,同时成绩从高到低排列;(姓名,学院名称,成绩)13求学时在30-45之间(含30和45)的课程的课程号和课程名称及授课教师;(课程号,课程名,教师姓名)14检索选修课程“经济学”的最高分学生的姓名;(姓名)15查询选课人数超过5人的课程的课程号及课程名;(课程号,课程名)二、 实验目的使用SQL语句进行各种查询 1、熟练掌握单表查询,包括 (1) 选择表中的若干列(投影) (2) 选择表中的若干元组(选择) (3) 对查询结果排序 (4) 使用集函数 (5) 对查询结果分组 2、熟练掌握复杂查询,包括1) 等值与非等值连接查询 2) 自身连接:一个表与其自己进行连接。3) 外连接查询4) 复合条件连接:WHERE 子句中可以有多个连接条件。 3、熟练掌握嵌套查询,包括1) 带有IN谓词的子查询2) 带有比较运算符的子查询(子查询一定要跟在比较符之后)3) 带有ANY或ALL谓词的子查询(使用ANY和ALL时必须同时使用比较运算符)4) 带有EXISTS谓词的子查询(查询结果不返回任何数据,只产生逻辑“真”或“假”)三、实验步骤及运行结果1四、实验体会本次实验使我掌握了表的查询操作,以及对查询结果进行排序,分组等处理,这次的实验难度比较大,对于EXISTS,除法,等一些较难的查询操作,总是理解不够,容易出错,这提醒我平时要多上机实践,才能更好的理解和掌握SQL语句。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!