数据库教室管理信息系统课程设计.doc_第1页
数据库教室管理信息系统课程设计.doc_第2页
数据库教室管理信息系统课程设计.doc_第3页
数据库教室管理信息系统课程设计.doc_第4页
数据库教室管理信息系统课程设计.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

12. 12数据库课程设计目录教室信息管理系统2数据库设计2一、需求分析2二、数据流图5三、数据字典6四、E-R图8五、程序结构9六、设计小结17应用系统设计18一、需求分析18二、数据流图21三、数据字典22四、概念结构设计24五、系统测试:48六、设计小结52教室信息管理系统数据库设计一、需求分析第一部分 项目背景本系统的用户面向在校学生、教师、管理人员,我们根据从学校方面取得的对教室的使用情况,存在的问题等信息,根据我们日常生活中的生活经验,根据我们所做的对在校师生的询问和调查,得出教室的下列实际情况:1、学校的教室使用情况与教室管理相关的学校的成分有:学生、教师和教室。学校的所有日常工作都是围绕着这三大部分进行的。学校下设若干系,如经管系、计信系、外语系等;每个系下设多种专业,如计信系下设五个专业:计算机科学与技术、信息科学与技术、软件工程、网络工程、信息管理;每个专业配有若干教师,每个教师的职称可能会有所不同。同时,教师可以开设若干门课程,一门课程可以由多个老师来教授。每个专业开设有若干课程,如计信系计算机科学与技术专业开设有数据库原理、操作系统原理等课程。每个专业有若干班级组成,班级的专业、人数、学生信息等各不相同。每个教室在不同的时段可以上不同的课程。 2、用户要求(1)基本信息要求:A、 教师信息教师的基本信息(教师的教师编号,教师姓名,性别,所属院系,职称,身份证号);B、学生信息学生的基本信息(学生的学号,姓名,院系号,身份证号);C、 教室信息教室的基本信息(教室的教室编号,教室类型,教室容量,教室多媒体状况);D、课程信息课程的基本信息(课程编号,课程名称、课程学分、课程种类、所属院系号);E、院系信息 院系的基本信息(院系编号、院系名称);(2)处理信息要求:为了能够妥善管理教室信息,使得教室的利用效率提高,完善目前学校教室管理统的不足,充分满足教师、学生的要求,必须对教室的借用规则、使用情况做出明确的规定与清晰地显示。a、 教师查询:通过这个功能,可以查询相关院系相关教师的个人信息以及开课信息,以便能更好地了解教师及其开课情况。b、 教室查询:通过这个功能,可以查询相关教室的信息以及该教室在每天任意时段的使用情况,或者有课,或者有讲座,或者有活动等等。这个功能以便使教师和同学能更好地了解教室及其使用情况。c、 课程查询:通过这个功能,可以查询某一课程的详细信息,如同一课程可以有多个教师开课,以便更好地了解任意课程的详细信息。d、 教室借用:通过这个功能,可以借教室,即获得教室在某段时间的使用权,办讲座,开展社团活动,教师上课等等。 (3)安全性要求:(主要针对网站设计而言):a、访问用户的标识唯一以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;b、不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;c、不同用户设置不同的权限,区分不同的用户,如学生、教师和教务处管理人员。学生(只能查询教室、教师和课程信息以及提出借用教室申请),教师(只能查询教室、教师和课程信息,以及提出借用教室申请),管理人员(可进行日常事务的处理,如增加、删除、更新课程、教室、教师信息,并批准或拒绝借用教室的申请)。(4)完整性要求(主要针对数据库而言): a、各种信息记录的完整性,信息记录内容根据实际情况判断是否能为空;b、各种数据间相互的联系的正确性(外键、主键等的正确设置);c、相同的数据在不同记录中的一致性(数据连接过程中合理使用表间的联系元素)。3、开发工具: Microsoft Visual Studio 2010,Microsoft SQL Server 2008 SQL (Server Management Studio Express)第二部分 功能需求1、教室查询子系统(1)编号搜索在输入框中直接输入想要查询的教室的编号,即可得到教室在任意时段的使用信息。(2)条件搜索根据教室的基本信息,判断所需的教室是否需要多媒体、是否需要阶梯教室、有何人数限制等条件,进入教室页面后,即可得所查满足条件的教室在任意时段的使用信息。2、教师查询子系统(1)教师姓名搜索在输入框中直接输入想要查询的老师的名字,即可得到教师的个人信息及开课信息。(2)根据教师所在院系搜索根据院系教师,帮助同学寻找想要搜索的老师。进入教师页面后,即可得教师的个人信息及开课信息。3、课程查询子系统(1)课程名称搜索在输入框中直接输入想要查询的课程的名字,即可得到课程的详细信息。(2)根据课程所在院系搜索根据院系课程,帮助同学寻找想要搜索的课程。进入课程页面后,即可得课程的详细信息。4、教室借用子系统点击教室借用后,教师或学生发出借用教室的申请,输入要借的教室编号,等待管理员批准。二、数据流图教师查询子系统教室查询子系统教室借用子系统三、数据字典1、教室数据字典:属性名存储代码类型长度备注教室编号clnochar20教室号教室类型ctypechar20阶梯教室或普通教室多媒体mediumchar10教室是否配备多媒体容量capacitychar10教室容纳学生数2、院系数据字典:属性名存储代码类型长度备注院系号depnochar20学校中院系的编号院系名称depnamechar20学校中院系名称3、课程数据字典:属性名存储代码类型长度备注课程号cnochar20课程编号课程名称cnamechar20课程名称学分creditchar1课程学分课程类型categorychar20课程类型(博雅课程、专业选修、专业必修)开课院系号deptnochar20课程开课的院系4、教师数据字典:属性名存储代码类型长度备注教师编号tnochar20教师编号教师姓名tnamechar20教师姓名性别sexchar2教师性别(男、女)所属院系depnochar20教师所属院系职称titlechar10教师的职称(教授、副教授、讲师)身份证号tidchar20教师身份证号5、学生数据字典:属性名存储代码类型长度备注学号snochar20学生编号姓名snamechar20学生姓名院系号deptnochar20学生所属院系身份证号sidchar20学生的身份证号6、教师开课表数据字典:属性名存储代码类型长度备注教师号tnochar20教师编号教室号clnochar20教室编号课程号cnochar20该教室所开的课程院系号depnochar20院系号工作日weekdaychar8工作日上课时间段periodchar20上课时间段7、教室借用表数据字典:属性名存储代码类型长度备注教室号clnochar20教室编号使用人编号snochar20借用教室人员的编号使用日期usedatechar10使用教室的日期工作日weekdaychar8使用教室的星期借用时间段periodchar20使用教室的时间段用途usechar100借用教室的用途状态usestatuschar10借用教室审批的状态四、E-R图 学生管理信息系统分E-R图1学生管理信息系统总E-R图五、程序结构1、数据库设计结构(下划线表示主键或外键)1、教室教室编号,教室类型,教室容量,教室多媒体2、院系 院系号,院系名称3、课程课程号,课程名称,课程学分,课程类型,开课院系号4、教师教师编号,教师姓名,性别,所属院系,职称, 身份证号5、学生学号,姓名,院系号,身份证号6、教师开课表教室号,上课时间,上课时间段,教师号,课程号,院系号7、教室借用表教室编号,使用人编号,使用日期,借用时间段,工作日,用途,审批状态2、程序设计结构create database ClassroomManageon(name=ClassroomManage_data,filename=D:sqldataClassroomManage_data.mdf,size=20MB,maxsize=100MB,filegrowth=10%)log on(name=ClassroomManage_log,filename=D:sqldataClassroomManage_log.ldf,size=2MB,maxsize=10MB,filegrowth=10%)use ClassroomManagego-教室信息create table classroom ( clno char(20) not null primary key ,-教室编号 ctype char(20) null,-教室类型(阶梯教室、普通教室) capacity char(10) null,-教室容量 medium char(10) null-教室多媒体 );insert into classroom(clno,ctype,capacity,medium )values(4211,阶梯教室,150,有多媒体)insert into classroom(clno,ctype,capacity,medium )values(1608,普通教室,150,无多媒体)insert into classroom(clno,ctype,capacity,medium )values(3409,阶梯教室,150,有多媒体)insert into classroom(clno,ctype,capacity,medium )values(4407,普通教室,150,无多媒体)insert into classroom(clno,ctype,capacity,medium )values(2612,普通教室,150,有多媒体)insert into classroom(clno,ctype,capacity,medium )values(4309,阶梯教室,150,有多媒体)-院系信息create table department ( depno char(20) not null primary key , depname char(20) null );insert into department(depno,depname)values(101010,计信系)insert into department(depno,depname)values(101011,电信系)-课程信息create table course(cno char(20) not null primary key , cname char(20) null, credit char(1) null, category char(20) null,-课程类型号 depno char(20) not null,-开课院系号 foreign key (depno) references department(depno) );insert into course(cno,cname,credit,category,depno)values(1010101,C语言程序设计,2,必修课,101010)insert into course(cno,cname,credit,category,depno)values(1010102,汇编语言,2,必修课,101010)insert into course(cno,cname,credit,category,depno)values(1010103,JAVA程序设计,2,必修课,101010)insert into course(cno,cname,credit,category,depno)values(1010104,数据库原理,2,必修课,101010)insert into course(cno,cname,credit,category,depno)values(1010105,多媒体技术,2,必修课,101010)insert into course(cno,cname,credit,category,depno)values(1010110,马克思主义基本原理,2,公共课,101011)insert into course(cno,cname,credit,category,depno)values(1010111,中国近现代史,2,公共课,101011)-教师信息create table teacher(tno char(20) not null primary key , tname char(20) null, sex char(2) null check(sex=男or sex=女), depno char(20) not null, title char(10) null,-职称(教授、讲师.) tid char(20) null,-身份证号 foreign key (depno) references department(depno) );insert into teacher(tno,tname,sex,depno,title,tid)values(10101080,张华,男,101010,教授insert into teacher(tno,tname,sex,depno,title,tid)values(10101081,李华,男,101010,教授insert into teacher(tno,tname,sex,depno,title,tid)values(10101082,张兴华,男,101010,教授insert into teacher(tno,tname,sex,depno,title,tid)values(10101170,李丽华,女,101011,讲师insert into teacher(tno,tname,sex,depno,title,tid)values(10101171,赵兴磊,男,101011,副教授create table student(sno char(20) not null primary key , sname char(20) null, depno char(20)not null, sid char(20)null,-身份证号 foreign key (depno) references department(depno) );insert into student(sno,sname,depno,sid)values(10101061,赵磊,101010insert into student(sno,sname,depno,sid)values(10101062,李星,101010insert into student(sno,sname,depno,sid)values(10101063,张雨欣,101010insert into student(sno,sname,depno,sid)values(10101064,叶欣,101010,32448199105025689)insert into student(sno,sname,depno,sid)values(10101065,赵磊,101010-教师开课信息create table teachclass (tno char(20) not null,-教师号 clno char(20) not null,-教室编号 cno char(20) not null,-课程号 number char(20)null,-选该教师的学生人数(确定教室的容量) depno char(20)not null, weekday char(8)not null,-星期 period char(20)not null,-上课时间段 primary key(clno,weekday,period), foreign key (depno) references department(depno), foreign key (tno) references teacher(tno), foreign key (clno) references classroom(clno), foreign key (cno) references course(cno) );insert into teachclass(tno,clno,cno,number,depno,weekday,period)values(10101080,4211,1010101,150,101010,星期一,1-3节)insert into teachclass(tno,clno,cno,number,depno,weekday,period)values(10101080,1608,1010102,80,101010,星期二,4-5节)insert into teachclass(tno,clno,cno,number,depno,weekday,period)values(10101081,3409,1010103,200,101010,星期三,6-7节)insert into teachclass(tno,clno,cno,number,depno,weekday,period)values(10101082,4407,1010104,80,101010,星期四,8-9节)insert into teachclass(tno,clno,cno,number,depno,weekday,period)values(10101170,2612,1010110,100,101011,星期五,4-5节)insert into teachclass(tno,clno,cno,number,depno,weekday,period)values(10101171,4309,1010111,100,101011,星期一,6-7节)-借教室create table cborrow (clno char(20) not null, sno char(20)not null,-借用教室人员编号 usedate char(10)not null,-使用教室的日期 weekday char(8) null,-使用教室的星期 period char(20) not null,-使用教室的时间段 uses char(100)null,-教室的用途 usestatus char(10)null,-审批状态 primary key(clno,sno,usedate,period), foreign key (clno) references classroom(clno), foreign key (sno) references student(sno), );insert into cborrow(clno,sno,usedate,weekday,period,uses, usestatus)values(1608,10101062,2011-12-11,星期二,4-5节,上课,审批中)insert into cborrow(clno,sno,usedate,weekday,period,uses, usestatus)values(2612,10101063,2011-12-12,星期三,6-7节,上课,审批中)insert into cborrow(clno,sno,usedate,weekday,period,uses, usestatus)values(3409,10101064,2011-12-28,星期二,1-3节,上课,审批通过)insert into cborrow(clno,sno,usedate,weekday,period,uses, usestatus)values(4211,10101065,2011-12-14,星期五,4-5节,上课,审批通过)insert into cborrow(clno,sno,usedate,weekday,period,uses, usestatus)values(4407,10101061,2011-12-27,星期一,6-7节,上课,审批中)-创建教师开课信息查询视图use ClassroomManagegocreate view teachinfoasselect dbo.teacher.tno as 教师编号,dbo.teacher.tname as 教师姓名,dbo.teacher.sex as 性别, dbo.department.depname as 所属院系,dbo.teacher.title as 职称,ame as 课程名称, dbo.teachclass.clno as 开课教室,dbo.teachclass.weekday as 开课星期,dbo.teachclass.period as 上课节次from dbo.teacher inner join dbo.teachclass on dbo.teacher.tno=dbo.teachclass.tno inner join dbo.course on o=o inner join dbo.department on dbo.department.depno=dbo.teacher.depno goselect * from teachinfo-创建教室信息查询视图use ClassroomManagegocreate view classroominfoasselect dbo.classroom.clno as 教室编号,dbo.classroom.ctype as 教室类型,dbo.classroom.capacity as 教室容量, dbo.classroom.medium as 有无多媒体情况from dbo.classroomgoselect * from classroominfo-创建课程信息查询视图use ClassroomManagegocreate view courseinfoasselect o as 课程编号,ame as 课程名称,dbo.course.credit as 课程学分, dbo.course.category as 课程类别,dbo.department.depname as 课程所属院系from dbo.course inner join dbo.department on dbo.course.depno=dbo.department.depnogoselect * from courseinfo-创建需要大教室的教室信息查询视图use ClassroomManagegocreate view classroomneedbigasselect dbo.classroom.clno as 教室编号,dbo.classroom.ctype as 教室类型,dbo.classroom.capacity as 教室容量, dbo.classroom.medium as 有无多媒体情况from dbo.classroom where dbo.classroom.ctype=阶梯教室and dbo.classroom.capacity=150and dbo.classroom.medium=无多媒体goselect * from classroomneedbig-创建需要多媒体普通教室的教室信息查询视图use ClassroomManagegocreate view classroomneedmediumasselect dbo.classroom.clno as教室编号,dbo.classroom.ctype as 教室类型,dbo.classroom.capacity as 教室容量, dbo.classroom.medium as 有无多媒体情况from dbo.classroom where dbo.classroom.ctype=普通教室and dbo.classroom.capacity=150and dbo.classroom.medium=有多媒体goselect * from classroomneedmedium-创建需要多媒体阶梯教室的教室信息查询视图use ClassroomManagegocreate view classroomneedbigmediumasselect dbo.classroom.clno as 教室编号,dbo.classroom.ctype as 教室类型,dbo.classroom.capacity as 教室容量, dbo.classroom.medium as 有无多媒体情况from dbo.classroom where dbo.classroom.ctype=阶梯教室and dbo.classroom.capacity=150and dbo.classroom.medium=有多媒体goselect * from classroomneedbigmedium-创建不需要多媒体普通教室的教室信息查询视图use ClassroomManagegocreate view classroomneedsmallasselect dbo.classroom.clno as 教室编号,dbo.classroom.ctype as 教室类型,dbo.classroom.capacity as 教室容量, dbo.classroom.medium as 有无多媒体情况from dbo.classroom where dbo.classroom.ctype=普通教室and dbo.classroom.capacity=150and dbo.classroom.medium=无多媒体goselect * from classroomneedsmall-创建当申请者按条件借教室时的关于申请者的部分信息use ClassroomManagegocreate view candidatesasselect dbo.cborrow.sno as 申请人编号,dbo.cborrow.usedate as 借用日期,dbo.cborrow.weekday as 借用星期, dbo.cborrow.period as 借用阶段,dbo.cborrow.uses as 借用用途,dbo.cborrow.usestatus as 审批状态from dbo.cborrowgoselect * from candidates-创建当申请者的申请条件记录表信息use ClassroomManagegocreate view candidatesconditionasselect dbo.classroom.capacity as 教室容量,dbo.classroom.medium as 多媒体情况,dbo.classroom.ctype as 教室类型 from dbo.classroomgoselect * from candidatescondition六、设计小结通过这次为期两周时间的课程设计让我对数据库这一学科的很多知识得到了一次更深的理解,当初原本以为自己已经基本掌握了数据库SQL的全部知识,但当我开始着手实际操作时才发现原来过去自己所掌握的知识是那么的贫乏。这次我们所做的课程设计题目为教室信息管理系统,我们两个人分工合作,一人一部分,开始做表时还算顺利,但当到了后来设计视图,很多东西都不懂,为此我们去图书馆参阅了很多书籍,也多次请教同学,但是因为我们的没有经验,所以设计出来的东西总是漏洞百出,不是数据冗余,就是文档组织不合理。还有就是在与.net连接的时候真可谓是困难重重,不断地试不断的失败,最后在同学们的帮助下总算是连接好了。 总的来说这课程设计真的不容易,不仅需要丰富的知识,严谨的思维,还需要耐心,往往一个小小的窗口就能让我们改半天,不过经过此次的课程设计不仅让我学到了很多过去漏掉的知识,而且也让我学到了很多新的知识。应用系统设计一、需求分析第一部分 项目背景本系统的用户面向在校学生、教师、管理人员,我们根据从学校方面取得的对教室的使用情况,存在的问题等信息,根据我们日常生活中的生活经验,根据我们所做的对在校师生的询问和调查,得出教室的下列实际情况:1、学校的教室使用情况与教室管理相关的学校的成分有:学生、教师和教室。学校的所有日常工作都是围绕着这三大部分进行的。学校下设若干系,如经管系、计信系、外语系等;每个系下设多种专业,如计信系下设五个专业:计算机科学与技术、信息科学与技术、软件工程、网络工程、信息管理;每个专业配有若干教师,每个教师的职称可能会有所不同。同时,教师可以开设若干门课程,一门课程可以由多个老师来教授。每个专业开设有若干课程,如计信系计算机科学与技术专业开设有数据库原理、操作系统原理等课程。每个专业有若干班级组成,班级的专业、人数、学生信息等各不相同。每个教室在不同的时段可以上不同的课程。 2、用户要求(1)基本信息要求:B、 教师信息教师的基本信息(教师的教师编号,教师姓名,性别,所属院系,职称,身份证号);B、学生信息学生的基本信息(学生的学号,姓名,院系号,身份证号);D、 教室信息教室的基本信息(教室的教室编号,教室类型,教室容量,教室多媒体状况);D、课程信息课程的基本信息(课程编号,课程名称、课程学分、课程种类、所属院系号);E、院系信息 院系的基本信息(院系编号、院系名称);(2)处理信息要求:为了能够妥善管理教室信息,使得教室的利用效率提高,完善目前学校教室管理统的不足,充分满足教师、学生的要求,必须对教室的借用规则、使用情况做出明确的规定与清晰地显示。e、 教师查询:通过这个功能,可以查询相关院系相关教师的个人信息以及开课信息,以便能更好地了解教师及其开课情况。f、 教室查询:通过这个功能,可以查询相关教室的信息以及该教室在每天任意时段的使用情况,或者有课,或者有讲座,或者有活动等等。这个功能以便使教师和同学能更好地了解教室及其使用情况。g、 课程查询:通过这个功能,可以查询某一课程的详细信息,如同一课程可以有多个教师开课,以便更好地了解任意课程的详细信息。h、 教室借用:通过这个功能,可以借教室,即获得教室在某段时间的使用权,办讲座,开展社团活动,教师上课等等。 (3)安全性要求:(主要针对网站设计而言):a、访问用户的标识唯一以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;b、不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;c、不同用户设置不同的权限,区分不同的用户,如学生、教师和教务处管理人员。学生(只能查询教室、教师和课程信息以及提出借用教室申请),教师(只能查询教室、教师和课程信息,以及提出借用教室申请),管理人员(可进行日常事务的处理,如增加、删除、更新课程、教室、教师信息,并批准或拒绝借用教室的申请)。(4)完整性要求(主要针对数据库而言): a、各种信息记录的完整性,信息记录内容根据实际情况判断是否能为空;b、各种数据间相互的联系的正确性(外键、主键等的正确设置);c、相同的数据在不同记录中的一致性(数据连接过程中合理使用表间的联系元素)。3、开发工具: Microsoft Visual Studio 2010,Microsoft SQL Server 2008 SQL (Server Management Studio Express)第二部分 功能需求1、教室查询子系统(1)编号搜索在输入框中直接输入想要查询的教室的编号,即可得到教室在任意时段的使用信息。(2)条件搜索根据教室的基本信息,判断所需的教室

温馨提示

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

评论

0/150

提交评论