考勤系统(数据库实践报告).doc_第1页
考勤系统(数据库实践报告).doc_第2页
考勤系统(数据库实践报告).doc_第3页
考勤系统(数据库实践报告).doc_第4页
考勤系统(数据库实践报告).doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库(考勤系统)实验报告 学院:管理与经济学院 专业:信息管理与信息系统 班级: 姓名: 学号: 时间:2010年1月26号一、数据库实践性质、目的和任务1性质:专业必修课2目的和任务:数据库原理是一门应用性很强的专业课,在学习时必须注意理论与实践相结合。本实践课的目的是通过实践使学生经历一个数据库系统的数据库设计的全过程和受到一次综合的训练,以便能较全面地理解、掌握和综合运用所学的知识。3先修课程:数据库原理及应用4学时数: 48学时5学分数: 2.5分二、数据库实践课总体要求按照实践课题的具体要求进行详细的系统设计,要包括以下内容。1数据库概念结构设计(E-R图)2数据库逻辑结构设计(关系模型,关系模式的设计至少要满足第三范式;数据库的设计要考虑安全性和完整性的要求)3数据库物理结构设计(建库、建表、索引、视图)4输入初始数据,要求每个表的记录数不得少于10条,并且满足实际业务场景。三、数据库实践课的内容和要求考勤系统的设计(1) 按专业统计各年度按时上课的学生名单(2) 统计各个学期某门课程的出勤记录(3) 按课程统计各个学期旷课次数超过一定次数的学生名单(4) 统计本学期某专业学生某门课程的出勤情况l 为每个实体表和关系表创建合适的索引(聚簇索引、复合索引)、主码、外码;l 创建学生所属学院取值范围为计算机科学与技术学院、管理与经济学院、信息科学技术学院、机械与车辆工程学院、化工与材料学院、航空学院、文法学院、外国语学院、设计与艺术学院、国际学院的规则,并与相应的列绑定;l 在学生实体中创建性别默认值为女的默认,并与相应的列绑定;l 创建一个可以通过所属学院类别和班级类别查询学生的存储过程;l 通过触发器定义旷课的学生不能从学生实体中删除;l 建立包括学生的学号,姓名,所属学院,旷课次数的视图;四、数据库实践课进度表 时间完成内容提交文档备注十九周周三上午(理论)理论课:(1) 概念结构设计: E-R图(2) 关系数据表所有和数据库有关的操作全部在查询分析器中完成。二十周周一上午实验课:(1) 针对具体题目设计ER图,并转换成关系数据表(2) 按照转换后的关系数据表创建数据库、表、主键、外键(3) 每个表至少有10条数据(并且符合主外码关联关系)Visio图Word文档二十周周四、周五全天Sql二十周周三上午(理论)理论课:(1) 主外码、索引、视图、规则、默认、触发器、存储过程(2) 用Sql语言实现统计分析功能二十一周周一全天、实验课:数据库物理结构设计(1) 上机操作,学会数据库主外码、索引、视图、规则、默认、存储过程的建立等(2) 用Sql语言实现具体题目中的统计分析报表Sql二十一周周三上午考核检查数据库实践课报告书(visio+word+sql)五实验过程1.建立E-R图2.关系模式学生(学号,姓名,性别,所属学院,专业,班级,旷课次数)课程(课程号,课程名,开课时间,年度,学期,)考勤表(考勤表编号,学号,课程号,出勤情况)选修(学号,课程号,成绩)出勤(学号,考勤表编号)3.建库create database 学生考勤库on primary (name=学生考勤库,filename =E: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 (计算机科学与技术学院,管理与经济学院,信息科学技术学院,机械与车辆工程学院,化工与材料学院,航空学院,文法学院,外国语学院,设计与艺术学院,国际学院);CREATE 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(学号)REFERENCES 学生(学号),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,季节,女,管理与经济学院,信息管理与信息系统,4班,0);insert into 学生values (00002,穆子墨,女,文法学院,法学,3班,0);insert into 学生values (00003,叶童,男,设计与艺术学院,视觉传达,1班,6);insert into 学生values (00004,季晨,男,化工与材料学院, 环境工程,2班,5);insert into 学生values (00005,苏嘉,女,计算机科学与技术学院,计算机科学与技术,1班,4);insert into 学生values (00006,王朔,男,外国语学院,英语,1班,16);insert into 学生values (00007,李飞扬,男,信息科学技术学院,自动化,2班,9);insert into 学生values (00008,孙超,男,机械与车辆工程学院,机械,2班,4);insert into 学生values (00009,时飞燕,女,航空学院,航空,4班,5);insert into 学生values (00010,段洪波,男,管理与经济学院,会计,4班,0);insert into 学生values (00011,洛英,女,管理与经济学院,国贸,3班,0);(2).课程表数据输入insert into 课程values (A,大学英语,2008-09-10,大一,二);insert into 课程values (B,电子商务概论,2010-03-03,大三,一);insert into 课程values (C,数据结构,2009-09-10,大二,一);insert into 课程values (D,计算机网络技术,2007-09-10,大一,一);insert into 课程values (E,管理信息系统,2009-09-10,大二,二);insert into 课程values (F,经济法,2008-03-04,大一,二);insert into 课程values (G,概率论与数理统计,2008-09-11,大二,一);insert into 课程values (H,网络营销,2007-09-10,大一,一);insert into 课程values (I,国际贸易理论与实务,2009-03-03,大二,二);insert into 课程values (J,运筹学,2009-09-09,大三,一);insert into 课程values (K,财务管理,2010-03-03,大三,二);(3).考勤表数据输入insert into 考勤表values (20001,00001,A,已到);insert into 考勤表values (20002,00002,B,迟到);insert into 考勤表values (20003,00003,C,旷课);insert into 考勤表values (20004,00004,D,已到);insert into 考勤表values (20005,00005,E,已到);insert into 考勤表values (20006,00006,F,迟到);insert into 考勤表values (20007,00007,G,旷课);insert into 考勤表values (20008,00008,H,迟到);insert into 考勤表values (20009,00009,I,旷课);insert into 考勤表values (20010,00010,J,已到);insert into 考勤表values (20011,00011,K,已到);(4).选修数据输入insert into 选修VALUES (00001,A,92);insert into 选修VALUES (00002,B,90);insert into 选修VALUES (00003,C,85);insert into 选修VALUES (00004,A,88);insert into 选修VALUES (00005,D,83);insert into 选修VALUES (00006,E,89);insert into 选修VALUES (00007,F,90);insert into 选修VALUES (00008,G,78);insert into 选修VALUES (00009,H,70);insert into 选修VALUES (00010,I,77);insert into 选修VALUES (00011,J,88);(5).出勤数据输入insertinto 出勤values (00001,20001);insertinto 出勤values (00002,20002);insertinto 出勤values (00003,20003);insertinto 出勤values (00004,20004);insertinto 出勤values (00005,20005);insertinto 出勤values (00006,20006);insertinto 出勤values (00007,20007);insertinto 出勤values (00008,20008);insertinto 出勤values (00009,20009);insertinto 出勤values (00010,20010);insertinto 出勤values (00011,20011);6.建立索引(1)、聚簇索引A、学生.学号create unique clustered index 学号 on 学生(学号)B、课程.课程号create unique clustered index 课程号 on 课程(课程号)C、考勤表.考勤表编号create unique clustered index 考勤表编号 on 考勤表(考勤表编号)(2)、复合索引A、学号_课程号create index 学号_课程号 on 选修(学号,课程号)B、学号_考勤表编号create index 学号_考勤表编号 on 出勤(学号,考勤表编号)7. 创建学生所属学院取值范围为计算机科学与技术学院、管理与经济学院、信息科学技术学院、机械与车辆工程学院、化工与材料学院、航空学院、文法学院、外国语学院、设计与艺术学院、国际学院的规则,并与相应的列绑定;create rule 学院取值范围 as 学院 in( 计算机科学与技术学院,管理与经济学院,信息科学技术学院,机械与车辆工程学院,化工与材料学院,航空学院,文法学院,外国语学院,设计与艺术学院,国际学院) go exec sp_bindrule 学院取值范围,学生.学院8.在学生实体中创建性别默认值为女的默认,并与相应的列绑定;create default 性别 as 女goexec sp_bindefault 性别,学生.性别9. 创建一个可以通过所属学院类别和班级类别查询学生的存储过程;A、学院类别CREATE PROCEDURE 学院类别 AS SELECT* FROM 学生GOEXEC 学院类别B、班级类别CREATE PROCEDURE 班级类别 AS SELECT* FROM 学生GOEXEC 班级类别10. 通过触发器定义旷课的学生不能从学生实体中删除;create trigger 学生_delete on 学生for deleteas if (select count (*) from 考勤,deleted where 考勤.学号=deleted.学号 and 出勤情况=旷课)0rollback transaction11. 建立包括学生的学号,姓名,所属学院,旷课次数的视图;CREATE VIEW 学生视图AS SELECT 学号,姓名,学院,旷课次数FROM 学生12.查询工作(1)、按专业统计各年度按时上课的学生名单A、查询语句select 学生.学号,姓名,专业,出勤情况from 学生,考勤表,课程where 学生.学号=考勤表.学号 and 课程.课程号=考勤表.课程号 and 年度=大一 and 出勤情况=已到;查询结果、查询语句select 学生.学号,姓名,专业,出勤情况from 学生,考勤表,课程where 学生.学号=考勤表.学号 and 课程.课程号=考勤表.课程号 and 年度=大二 and 出勤情况=已到;查询结果、查询语句select 学生.学号,姓名,专业,出勤情况from 学生,考勤表,课程where 学生.学号=考勤表.学号 and 课程.课程号=考勤表.课程号 and 年度=大三 and 出勤查询结果(2)、统计各个学期某门课程的出勤记录A、查询语句select 课程.课程号,课程名,出勤情况from 课程,考勤表where 课程.课程号=考勤表.课程号 and 学期=一and 考勤表.课程号=C;查询结果、查询语句select 课程.课程号,课程名,出勤情况from 课程,考勤表where 课程.课程号=考勤表.课程号 and 学期=二and 考勤表.课程号=;查询结果(3)、按课程统计各个学期旷课次数超过一定次数的学生名单、查询语句select 学生.学号,姓名,旷课次数,课程.课程号,课程名,考勤表.课程号from 学生,选修,课程,考勤表where 学生.学号=选修.学号 and 课程.课程号=考勤表.课程号 and 学生.学号=考勤表.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论