数据库课程设计 计算机教务管理系统_数据库课程设计免费

2020-02-27 其他范文 下载本文

数据库课程设计 计算机教务管理系统由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“数据库课程设计免费”。

中北大学

数据库课程设计

说 明 书

学 院、系: 专

业: 学 生 姓 名: 设 计 题 目:

李翰超

软件学院 软件工程

学 号: 1221010619

计算机等级考试教务管理系统

起 迄 日 期: 2014年5月26日-2014年6月20日 指 导 教 师:

2012 年 6月 21 日.引言

随着全国计算机等级考试的全面推广,我市学生每年参加两次全国计算机等级考试,考试管理工作量相当大。但是靠人工的方式管理等级考试相关的信息,这种管理方式存在着许多缺点,如:工作效率低、统计容易出错,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。所以开发一个计算机等级考试成绩管理系统是非常必要的。2.需求分析

计算机等级考试分为若干种类:如:计算机一级VB、C语言;计算机二级VB、C语言、C++;计算机三级数据库、网络技术;计算机四级数据库工程师、网络工程师。对于每个种类,考试分为笔试和机试.计算机等级考试工作过程如下:每个考生在报名时,登记姓名、性别、报考种类、学校、身份证号、个人照片等。考试办公室根据考生报考的种类,以及所在的考区来安排考场,编排准考证号码,打印准考证。考生参加考试后,登记每个考生每项的成绩,并计算出每个考生笔试和机试的成绩是否都>=60分。对机试和笔试都>=60分的考生,按所在考区打印通过证书,同一考区按准考证号码顺序打印出通过证书,分发给考生;计算机四级只要笔试成绩>=60则通过;打印成绩表供考试办公室留存、备查。

开发计算机等级考试成绩管理系统,有计算机辅助实现上述过程,代替人工操作,节省人力、时间,提高工作效率。

2.1 处理对象(1)用户帐号密码管理 对考点代码,考点名称进行管理 用户与密码进行管理(2)报名管理功能模块

报各库录入(姓名不能不空,之间不能有空格)增加、删除、修改、浏览(3)准考证管理模块

准考证生成规则:xxx+yy+zz+kk 其中XXX为考点代码;YY为语言代码,XX为考场号,KK为座位号(4)考务管理功能模块

考生信息查询、浏览 成绩管理模块

成绩数据录入、接收

成绩合成(总成绩=笔试成绩*0.6+上机成绩*0.4),按大于或等于60合格

2.2数据字典:

考生信息表(考生主键(主键),姓名,性别,出生年份,民族,身份证号,联系地址,联系电话,备注)

准考证表(准考证号主键,准考证号)

成绩表(成绩表主键,笔试成绩,上机成绩,总成绩)

级别语言代码表(级别语言代码主键,级别语言代码,级别,语言)考生考点信息表(考生考点主键,考点代码,考点名称,)用户帐号管理(用户帐号主键,用户名,密码)

信息操作表(考生主键(主键),准考证号主键, 级别语言代码主键,考生考点主键,用户帐号主键)

3.E-R图

4.关系模型

考生信息表(考生主键(主键),姓名,性别,出生年份,民族,身份证号,联系地址,联系电话,备注)

准考证表(准考证号主键,准考证号)

成绩表(成绩表主键,笔试成绩,上机成绩,总成绩)

级别语言代码表(级别语言代码主键,级别语言代码,级别,语言)

考生考点信息表(考生考点主键,考点代码,考点名称,)用户帐号管理(用户帐号主键,用户名,密码)

信息操作表(考生主键(主键),准考证号主键, 级别语言代码主键,考生考点主键,用户帐号主键)

其模式定义:

见附件:模式定义。

5.物理设计

本数据库共有5张表组成,其中t_manage表为管理表,而其他4张表:t_grade,t_information,t_level,t_regist都为基本表,当要查询所需要的信息时,就用连接查询将管理表和基本表连接在一起,从而看到想看到信息。

6.数据库实施

create table t_grade(grade number primary key, write number, shangji number, totalgrade number);alter table t_grade add constraint write check(write=0);alter table t_grade add constraint shangji check(shangji

shangji>=0);alter table t_grade add constraint totalgrade check

(totalgrade=write+shangji);

insert into t_grade values(001,40,50,90);insert into t_grade values(002,30,50,80);insert into t_grade values(003,20,60,80);insert into t_grade values(004,25,50,75);insert into t_grade values(005,30,40,70);create table t_information(information number, sname varchar2(20)not null, gender varchar2(2)check(gender='n' or gender='v'), birth number, nation varchar2(20)not null, idnumber char(18), addre varchar2(20)not null, phone number not null, note varchar2(20),primary key(information));alter table t_information add constraint birth check(birth

birth>=19200101);

insert into t_information values

(006,'ling','n',19950302,'han','***014','shanxi','0101111',null);insert into t_information values

(007,'wang','n',19950607,'han','***014','shanxi','0101241',null);insert into t_information values

(008,'john','n',19950504,'german','***014','german','010234511' ,'forgien');insert into t_information values

(009,'liu','v',19930407,'han','***014','shanxi','010123511',nul l);insert into t_information values

(010,'yuan','n',19910408,'han','***014','shanxi','0101211',null);create table t_level(leve number primary key, codes number not null, language varchar2(15)not null);insert into t_level values(015,01,'chinese');insert into t_level values(016,01,'chinese');insert into t_level values(017,02,'chinese');insert into t_level values(018,01,'english');insert into t_level values(019,01,'chinese');

create table t_regist(regist number, place varchar2(14), registnumber varchar2(9), primary key(regist));

insert into t_regist values(020,10101,'14010101');insert into t_regist values(021,10201,'14010102');insert into t_regist values(022,11101,'14010103');insert into t_regist values(023,12101,'14010104');insert into t_regist values(024,15103,'14010105');create table t_user(use number, username varchar2(14)not null, code varchar2(20)not null, primary key(use));

insert into t_user values(025,'ling','asasn');insert into t_user values(026,'wang','asasn');insert into t_user values(027,'john','sdrhy');insert into t_user values(028,'liu','eryery');insert into t_user values(029,'yuan','hjlmyu');

create table t_manage(information number, grade number, leve number, use number, regist number, foreign key(grade)references t_grade(grade), foreign key(information)references t_information(information), foreign key(leve)references t_level(leve), foreign key(regist)references t_regist(regist), foreign key(use)references t_user(use));

insert into t_manage values(006,001,015,025,020);5

insert into t_manage values(007,002,016,026,021);insert into t_manage values(008,003,017,027,022);insert into t_manage values(009,004,018,028,023);insert into t_manage values(010,005,019,029,024);

7.系统调试

通过sql语句对其进行调试,以测试其正确性,如图1,2,3,4,5

图 1 6

图 2

图 3 7

图 4 用自然连接查询:

图 5

8.心得体会

本次课程设计主要设计一个计算机管理系统,我的大体思路就是将基本信息录入到基本表当中,并保证没有重复属性,然后设计一个管理表,让其它基本表参照这个管理表,这个管理表当中只有各表主键,需要查看信息时,就将两表连接。。

这次课设我觉得有两个难点,一个是表间的参照,另一个是约束条件的设置,尤其是约束条件一定要充分考虑到,还有当有那种范围值的约束时要在建表后要用alter修改,而不是在定义时直接约束。

最后一点是关于主键的问题,主键最好别用学号什么的,最好应该用连续的、无意义的数字,create sequence之后,每加一个元组就用一次nextval,这样可以让电脑自动排号。

《数据库课程设计 计算机教务管理系统.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
数据库课程设计 计算机教务管理系统
点击下载文档
相关专题 数据库课程设计免费 管理系统 教务 课程设计 数据库课程设计免费 管理系统 教务 课程设计
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文