1、考勤系统的设计(1) 按专业统计各年度按时上课的学生名单(2) 统计各个学期某门课程的出勤记录(3) 按课程统计各个学期旷课次数超过一定次数的学生名单(4) 统计本学期某专业学生某门课程的出勤情况 为每个实体表和关系表创建合适的索引(聚簇索引、复合索引)、主码、外码; 创建学生所属学院取值范围为计算机科学与技术学院、管理与经济学院、信息科学技术学院、机械与车辆工程学院、化工与材料学院、航空学院、文法学院、外国语学院、设计与艺术学院、国际学院的规则,并与相应的列绑定; 在学生实体中创建性别默认值为女的默认,并与相应的列绑定; 创建一个可以通过所属学院类别和班级类别查询学生的存储过程; 通过触发器
2、定义旷课的学生不能从学生实体中删除; 建立包括学生的学号,姓名,所属学院,旷课次数的视图;四、数据库实践课进度表 时间完成内容提交文档备注十九周周三上午(理论)理论课:(1) 概念结构设计: E-R图(2) 关系数据表所有和数据库有关的操作全部在查询分析器中完成。二十周周一上午实验课:(1) 针对具体题目设计ER图,并转换成关系数据表(2) 按照转换后的关系数据表创建数据库、表、主键、外键(3) 每个表至少有10条数据(并且符合主外码关联关系)Visio图Word文档二十周周四、周五全天Sql二十周周三上午(理论)(1) 主外码、索引、视图、规则、默认、触发器、存储过程(2) 用Sql语言实现
3、统计分析功能二十一周周一全天、数据库物理结构设计(1) 上机操作,学会数据库主外码、索引、视图、规则、默认、存储过程的建立等(2) 用Sql语言实现具体题目中的统计分析报表二十一周周三上午考核检查数据库实践课报告书(visio+word+sql)五实验过程1.建立E-R图2.关系模式学生(学号,姓名,性别,所属学院,专业,班级,旷课次数)课程(课程号,课程名,开课时间,年度,学期,)考勤表(考勤表编号,学号,课程号,出勤情况)选修(学号,课程号,成绩)出勤(学号,考勤表编号)3.建库create database 学生考勤库on primary (name=学生考勤库,filename =E:
4、msSQLdata学生考勤.mdf,size=4MB,maxsize=6MB)4.建立表 CREATE TABLE 学生(学号 CHAR(10)not null PRIMARY KEY, 姓名 CHAR(10), 性别 char(2), 学院 CHAR(20), 专业 CHAR(20), 班级 char(20), 旷课次数 CHAR(10),CONSTRAINT C1 CHECK(性别 IN(男,女),CONSTRAINT C2 CHECK(学院 IN (计算机科学与技术学院管理与经济学院信息科学技术学院机械与车辆工程学院化工与材料学院航空学院文法学院外国语学院设计与艺术学院国际学院);CRE
5、ATE TABLE 课程(课程号 CHAR(10)PRIMARY KEY, 课程名 CHAR(30), 开课时间 datetime, 年度 char (10), 学期 char (10);CREATE TABLE 考勤表(考勤表编号 CHAR(10)PRIMARY KEY, 学号 CHAR(12), 课程号 CHAR(5), 出勤情况 char(10);CREATE TABLE 选修(学号 CHAR(10), 课程号 CHAR(10), 成绩 SMALLINT,CONSTRAINT C3 PRIMARY KEY (学号,课程号),CONSTRAINT C4 FOREIGN KEY(学号)REF
6、ERENCES 学生(学号),CONSTRAINT C5 FOREIGN KEY(课程号)REFERENCES 课程(课程号);create table 出勤(学号 char(10) not null, 考勤表编号 char(10),CONSTRAINT C6 PRIMARY KEY (学号,考勤表编号),CONSTRAINT C7 FOREIGN KEY(学号)REFERENCES 学生(学号),CONSTRAINT C8 FOREIGN KEY(考勤表编号)REFERENCES 考勤表(考勤表编号);5.输入数据(1).学生表数据输入insert into 学生values (00001季
7、节信息管理与信息系统4班0);00002穆子墨法学3班00003叶童视觉传达1班600004季晨 环境工程2班500005苏嘉计算机科学与技术400006王朔英语1600007李飞扬自动化900008孙超机械00009时飞燕航空00010段洪波会计00011洛英国贸(2).课程表数据输入into 课程A大学英语2008-09-10大一二B电子商务概论2010-03-03大三一C数据结构2009-09-10大二D计算机网络技术2007-09-10E管理信息系统F经济法2008-03-04G概率论与数理统计2008-09-11H网络营销I国际贸易理论与实务2009-03-03J运筹学2009-09
8、-09K财务管理(3).考勤表数据输入into 考勤表20001已到20002迟到20003旷课2000420005200062000720008200092001020011(4).选修数据输入into 选修VALUES (929085888389787077(5).出勤数据输入insertinto 出勤6.建立索引(1)、聚簇索引A、学生.学号create unique clustered index 学号 on 学生(学号)B、课程.课程号create unique clustered index 课程号 on 课程(课程号)C、考勤表.考勤表编号create unique cluste
9、red index 考勤表编号 on 考勤表(考勤表编号)(2)、复合索引A、学号_课程号create index 学号_课程号 on 选修(学号,课程号)B、学号_考勤表编号index 学号_考勤表编号 on 出勤(学号,考勤表编号)7. 创建学生所属学院取值范围为计算机科学与技术学院、管理与经济学院、信息科学技术学院、机械与车辆工程学院、化工与材料学院、航空学院、文法学院、外国语学院、设计与艺术学院、国际学院的规则,并与相应的列绑定;create rule 学院取值范围 as 学院 in( ) go exec sp_bindrule 学院取值范围学生.学院8.在学生实体中创建性别默认值为女
10、的默认,并与相应的列绑定;create default 性别 as goexec sp_bindefault 性别学生.性别9. 创建一个可以通过所属学院类别和班级类别查询学生的存储过程;A、学院类别CREATE PROCEDURE 学院类别 AS SELECT* FROM 学生GOEXEC 学院类别B、班级类别CREATE PROCEDURE 班级类别EXEC 班级类别10. 通过触发器定义旷课的学生不能从学生实体中删除;create trigger 学生_delete on 学生for deleteas if (select count (*) from 考勤,deleted where
11、考勤.学号=deleted.学号 and 出勤情况=)rollback transaction11. 建立包括学生的学号,姓名,所属学院,旷课次数的视图;CREATE VIEW 学生视图AS SELECT 学号,姓名,学院,旷课次数FROM 学生12.查询工作(1)、按专业统计各年度按时上课的学生名单A、查询语句select 学生.学号,姓名,专业,出勤情况from 学生,考勤表,课程where 学生.学号=考勤表.学号 and 课程.课程号=考勤表.课程号 and 年度= and 出勤情况=;查询结果、查询语句、查询语句 and 出勤查询结果(2)、统计各个学期某门课程的出勤记录select
12、 课程.课程号,课程名,出勤情况from 课程,考勤表where 课程.课程号=考勤表.课程号 and 学期=and 考勤表.课程号=(3)、按课程统计各个学期旷课次数超过一定次数的学生名单、查询语句select 学生.学号,姓名,旷课次数,课程.课程号,课程名,考勤表.课程号from 学生,选修,课程,考勤表where 学生.学号=选修.学号 and 课程.课程号=考勤表.课程号 and 学生.学号=考勤表.学号 and 学期= and 旷课次数;(4)、统计本学期某专业学生某门课程的出勤情况查询语句select 学生.学号,姓名,考勤表.出勤情况from 学生,课程,考勤表where 学生
13、.学号=考勤表.学号 and 课程.课程号=考勤表.课程号 and 学期= and 考勤表.课程号= and 专业=六、实验心得在上实践课之前,我们专业已经学了一个学期的数据库原理这门课程了,这为我们这学期的实践课打下了扎实的基础。但是在实践课之前,我们的水平仅限于理论层面,对于如何真正的使用数据库的相关知识还处于朦胧的阶段,而这次的实践课正好给了我们这样一个机会。前面几天的任务是设计E-R图。显然,E-R图是整个数据库最坚实的基础,也是最难的一部分工作。不同的人有不同的设计理念,不过在经过与同学们的多方讨论以后,大家的E-R图都趋于相似,但是这也更有利于我们发现自己设计理念的不足,做出更好的E-R图。设计好E-R图后,剩下的工作就轻松多了,虽然在SQL语句的执行过程中频频出错,让我有了很大的挫败,但是我也因此受益匪浅。在此次的数据库实践中,我更加了解查询分析器和企业分析器的用法,在SQL语句的运行方面也更加的纯熟。这对于我以后的工作以及学习都必将有重大的作用。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1