数据库教室管理信息系统课程设计(1) - 图文

更新时间:2024-03-13 23:15:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

12. 12 数据库课程设计 目录

教室信息管理系统........................................................................................................ 2 数据库设计.................................................................................................................... 2

一、需求分析......................................................................................................... 2 二、数据流图......................................................................................................... 5 三、数据字典......................................................................................................... 6 四、E-R图 ............................................................................................................. 8 五、程序结构......................................................................................................... 9 六、设计小结....................................................................................................... 17 应用系统设计.............................................................................................................. 18

一、需求分析....................................................................................................... 18 二、数据流图....................................................................................................... 21 三、数据字典....................................................................................................... 22 四、概念结构设计............................................................................................... 24 五、系统测试:................................................................................................... 48 六、设计小结....................................................................................................... 52

1 12. 12 数据库课程设计 教室信息管理系统 数据库设计

一、需求分析

第一部分 项目背景

本系统的用户面向在校学生、教师、管理人员,我们根据从学校方面取得的对教室的使用情况,存在的问题等信息,根据我们日常生活中的生活经验,根据我们所做的对在校师生的询问和调查,得出教室的下列实际情况: 1、学校的教室使用情况

与教室管理相关的学校的成分有:学生、教师和教室。学校的所有日常工作都是围绕着这三大部分进行的。

学校下设若干系,如经管系、计信系、外语系等;每个系下设多种专业,如计信系下设五个专业:计算机科学与技术、信息科学与技术、软件工程、网络工程、信息管理;每个专业配有若干教师,每个教师的职称可能会有所不同。同时,教师可以开设若干门课程,一门课程可以由多个老师来教授。每个专业开设有若干课程,如计信系计算机科学与技术专业开设有数据库原理、操作系统原理等课程。每个专业有若干班级组成,班级的专业、人数、学生信息等各不相同。

每个教室在不同的时段可以上不同的课程。 2、用户要求 (1)基本信息要求: A、 教师信息

教师的基本信息(教师的教师编号,教师姓名,性别,所属院系,职称,身份证号); B、学生信息

学生的基本信息(学生的学号,姓名,院系号,身份证号); C、 教室信息

教室的基本信息(教室的教室编号,教室类型,教室容量,教室多媒体状况); D、课程信息

课程的基本信息(课程编号,课程名称、课程学分、课程种类、所属院系号);

2 12. 12 数据库课程设计 E、院系信息 院系的基本信息(院系编号、院系名称); (2)处理信息要求:

为了能够妥善管理教室信息,使得教室的利用效率提高,完善目前学校教室管理统的不足,充分满足教师、学生的要求,必须对教室的借用规则、使用情况做出明确的规定与清晰地显示。 a、 教师查询:

通过这个功能,可以查询相关院系相关教师的个人信息以及开课信息,以便能更好地了解教师及其开课情况。 b、 教室查询:

通过这个功能,可以查询相关教室的信息以及该教室在每天任意时段的使用情况,或者有课,或者有讲座,或者有活动等等。这个功能以便使教师和同学能更好地了解教室及其使用情况。 c、 课程查询:

通过这个功能,可以查询某一课程的详细信息,如同一课程可以有多个教师开课,以便更好地了解任意课程的详细信息。 d、 教室借用:

通过这个功能,可以借教室,即获得教室在某段时间的使用权,办讲座,开展社团活动,教师上课等等。 (3)安全性要求:

(主要针对网站设计而言):

a、访问用户的标识唯一以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;

b、不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;

c、不同用户设置不同的权限,区分不同的用户,如学生、教师和教务处管理人员。学生(只能查询教室、教师和课程信息以及提出借用教室申请),教师(只能查询教室、教师和课程信息,以及提出借用教室申请),管理人员(可进行日常事务的处理,如增加、删除、更新课程、教室、教师信息,并批准或拒绝借用教室的申请)。 (4)完整性要求

3 12. 12 数据库课程设计 (主要针对数据库而言): 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、教室借用子系统

4 12. 12 数据库课程设计 点击教室借用后,教师或学生发出借用教室的申请,输入要借的教室编号,等待管理员批准。

二、数据流图

教师查询子系统

教室查询子系统

5

12. 12 数据库课程设计

教室借用子系统

三、数据字典

1、教室数据字典:

属性名 教室编号 教室类型 多媒体 容量 存储代码 clno ctype medium capacity 类型 char char char char 长度 20 20 10 10 备注 教室号 阶梯教室或普通教室 教室是否配备多媒体 教室容纳学生数 2、院系数据字典:

属性名 院系号 院系名称 存储代码 depno depname 类型 char char 长度 20 20 备注 学校中院系的编号 学校中院系名称 3、课程数据字典:

属性名 课程号 课程名称 学分 6 存储代码 cno cname credit 类型 char char char 长度 20 20 1 备注 课程编号 课程名称 课程学分 12. 12 数据库课程设计 课程类型 开课院系号 category deptno char char 20 20 课程类型(博雅课程、专业选修、专业必修) 课程开课的院系 4、教师数据字典: 属性名 教师编号 教师姓名 性别 所属院系 职称 身份证号

存储代码 tno tname sex depno title tid 类型 char char char char char char 长度 20 20 2 20 10 20 备注 教师编号 教师姓名 教师性别(男、女) 教师所属院系 教师的职称(教授、副教授、讲师) 教师身份证号 5、学生数据字典:

属性名 学号 姓名 院系号 身份证号 存储代码 sno sname deptno sid 类型 char char char char

长度 20 20 20 20 备注 学生编号 学生姓名 学生所属院系 学生的身份证号 6、教师开课表数据字典: 属性名 教师号 教室号 课程号 院系号 工作日 上课时间段

存储代码 tno clno cno depno weekday period 类型 char char char char char char 长度 20 20 20 20 8 20 备注 教师编号 教室编号 该教室所开的课程 院系号 工作日 上课时间段 7、教室借用表数据字典: 属性名 教室号 使用人编号 使用日期 工作日 借用时间段 用途 状态

7 存储代码 clno sno usedate weekday period use usestatus 类型 char char char char char char char 长度 20 20 10 8 20 100 10 备注 教室编号 借用教室人员的编号 使用教室的日期 使用教室的星期 使用教室的时间段 借用教室的用途 借用教室审批的状态 12. 12 数据库课程设计 四、E-R图

学生管理信息系统分E-R图

8 12. 12 数据库课程设计

学生管理信息系统总E-R图

五、程序结构

1、数据库设计结构(下划线表示主键或外键) 1、教室

教室编号,教室类型,教室容量,教室多媒体 2、院系

院系号,院系名称 3、课程

课程号,课程名称,课程学分,课程类型,开课院系号 4、教师

9 12. 12 数据库课程设计 教师编号,教师姓名,性别,所属院系,职称, 身份证号 5、学生 学号,姓名,院系号,身份证号 6、教师开课表

教室号,上课时间,上课时间段,教师号,课程号,院系号 7、教室借用表

教室编号,使用人编号,使用日期,借用时间段,工作日,用途,审批状态

2、程序设计结构

create database ClassroomManage on(

name=ClassroomManage_data,

filename='D:\\sqldata\\ClassroomManage_data.mdf', size=20MB, maxsize=100MB, filegrowth=10% ) log on(

name=ClassroomManage_log,

filename='D:\\sqldata\\ClassroomManage_log.ldf',

10

12. 12 数据库课程设计 size=2MB, maxsize=10MB, filegrowth=10% )

use ClassroomManage go

--教室信息

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','阶梯教室','<300,>150','有多媒体')

insert into classroom(clno,ctype,capacity,medium )values('1608','普通教室','<150','无多媒体')

insert into classroom(clno,ctype,capacity,medium )values('3409','阶梯教室','<300,>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','阶梯教室','<300,>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')

11 12. 12 数据库课程设计 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','教授','320481196505026829')

insert into teacher(tno,tname,sex,depno,title,tid)values('10101081','李华','男','101010','教授','320481196607026819')

insert into teacher(tno,tname,sex,depno,title,tid)values('10101082','张兴华','男','101010','教授','320581196506027829')

insert into teacher(tno,tname,sex,depno,title,tid)values('10101170','李丽华','女','101011','讲师','321581196505225829')

insert into teacher(tno,tname,sex,depno,title,tid)values('10101171','赵兴磊','男','101011','副教授','320481196505026829')

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','赵磊','101010','320481199105025689')

insert into student(sno,sname,depno,sid)values('10101062','李星','101010','321481199005026689')

12 12. 12 数据库课程设计 insert into student(sno,sname,depno,sid)values('10101063','张雨欣','101010','323481199112029689') insert into student(sno,sname,depno,sid)values('10101064','叶欣','101010','32448199105025689')

insert into student(sno,sname,depno,sid)values('10101065','赵磊','101010','325481199111025689') --教师开课信息

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,--使用教室的星期

13 12. 12 数据库课程设计 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 ClassroomManage go

create view teachinfo as

select dbo.teacher.tno as '教师编号',dbo.teacher.tname as '教师姓名',dbo.teacher.sex as '性别',

dbo.department.depname as '所属院系',dbo.teacher.title as '职称',dbo.course.cname 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 dbo.course.cno=dbo.teachclass.cno

inner join dbo.department on dbo.department.depno=dbo.teacher.depno go

select * from teachinfo

14 12. 12 数据库课程设计 --创建教室信息查询视图 use ClassroomManage go

create view classroominfo as

select dbo.classroom.clno as '教室编号',dbo.classroom.ctype as '教室类型',dbo.classroom.capacity as '教室容量', dbo.classroom.medium as '有无多媒体情况' from dbo.classroom go

select * from classroominfo

--创建课程信息查询视图 use ClassroomManage go

create view courseinfo as

select dbo.course.cno as '课程编号',dbo.course.cname 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.depno go

select * from courseinfo

--创建需要大教室的教室信息查询视图 use ClassroomManage go

create view classroomneedbig as

select 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='<300,>150'and dbo.classroom.medium='无多媒体' go

select * from classroomneedbig

--创建需要多媒体普通教室的教室信息查询视图 use ClassroomManage go

create view classroomneedmedium

15

12. 12 数据库课程设计

按院系查询:

<%@ Page Language=\

CodeFile=\

36 12. 12 数据库课程设计 \

课程院系查询

38 12. 12 数据库课程设计 4)教室借用 1、按教室编号借用 2、按教室条件借用 开始 输入查询信息 判断借用条件 按教室编号借用 按教室条件借用 显示教室信息 39 判断可否借用 可以借用 不可借用 结束 12. 12 数据库课程设计 源代码: <%@ Page Language=\AutoEventWireup=\CodeFile=\

教室借用查询

Font-Bold=\Font-Size=\OnClick=\

          

runat=\ Text=\按教室条件借用\BackColor=\

Font-Size=\OnClick=\

        

Font-Bold=\Font-Size=\onclick=\

40

本文来源:https://www.bwwdw.com/article/5zq8.html

Top