软件开发定制[数据库课程设计]基于Sql Server的教室信息管理系统(附部分源码)

提示:软件开发定制文章写完后,软件开发定制目录可以自动生成,软件开发定制如何生成可参考右边的帮助文档

[软件开发定制数据库课程设计]软件开发定制教室信息管理系统(附部分)


前言

在大学里,软件开发定制教室仍然是教学的主要场所,软件开发定制也是学生学习的重要场所,软件开发定制所以教室环境和设备直软件开发定制接影响到教学活动的开软件开发定制展和学生的学习。 软件开发定制为了保证教室环境良好的运转,软件开发定制教室的管理也就显得十软件开发定制分的必要和重要。软件开发定制但是教室的管理也并不软件开发定制是一件很容易的事情。软件开发定制教室的使用具有一定的软件开发定制计划性和流动性,软件开发定制即一个班在相应的时间里,软件开发定制所上的课程和使用的教软件开发定制室是固定的,软件开发定制但是不同的课程在不同软件开发定制的时间里会使用不同的教室,软件开发定制这与教务处的课程安排软件开发定制是密切相关的。 为此,软件开发定制经过较详细的调查和慎重的思考,我决定做一个教室管理系统,来解决这些问题,使管理简化,方便而且更有效。

关键词:数据库 教室 管理


1.概述

在大学里,教室仍然是教学的主要场所,也是学生学习的重要场所,所以教室环境和设备直接影响到教学活动的开展和学生的学习。
为了保证教室环境良好的运转,教室的管理也就显得十分的必要和重要。但是教室的管理也并不是一件很容易的事情。教室设备有所损坏必须及时登记,修复,否则很可能影响以后教学,造成教学事故。
教室的使用具有一定的计划性和流动性,即一个班在相应的时间里,所上的课程和使用的教室是固定的,但是不同的课程在不同的时间里会使用不同的教室,这与教务处的课程安排是密切相关的。
为此,经过较详细的调查和慎重的思考,我决定做一个教室信息管理系统,来解决这些问题,使管理简化,方便而且更有效。
课程设计报告的组织:
本课程设计报告主要包括三个方面的内容:(1)前置部分:封面、目录页;(2)主体部分:摘要(课程设计的目的、任务与要求等)、正文、结论、参考文献;(3)附录部分:设计图件、照片等。

2.需求分析

2.1 学校的教室使用情况

与教室管理相关的学校的成分有:学生、教师和教室。学校的所有日常工作都是围绕着这三大部分进行的。
学校下设若干学院,如软件学院、数学与统计学院、外国语学院等;每个学院下设多种专业,如软件学院下设三个专业:计算机科学与技术、软件工程、数据科学技术;每个专业配有若干教师,每个教师的职称可能会有所不同。同时,教师可以开设若干门课程,一门课程可以由多个老师来教授。每个专业开设有若干课程,如软件学院软件工程专业开设有数据库原理、操作系统原理等课程。每个专业有若干班级组成,班级的专业、人数、学生信息等各不相同。
每个教室在不同的时段可以上不同的课程。

2.2 用户要求

(1)基本信息要求:
教师的基本信息(教师的教师编号,教师姓名,性别,所属院系,职称,工号);
学生的基本信息(学生的学号,姓名,院系号,身份证号);
教室的基本信息(教室的教室编号,教室类型,教室容量,教室多媒体状况);
课程的基本信息(课程编号,课程名称、课程学分、课程种类、所属院系号);
院系的基本信息(院系编号、院系名称);
(2)处理信息要求:
为了能够妥善管理教室信息,使得教室的利用效率提高,完善目前学校教室管理统的不足,充分满足教师、学生的要求,必须对教室的借用规则、使用情况做出明确的规定与清晰地显示。
(3)安全性要求:
a、访问用户的标识唯一以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;
b、不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;
c、不同用户设置不同的权限,区分不同的用户,如学生、教师和教务处管理人员。学生(只能查询教室、教师和课程信息以及提出借用教室申请),教师(只能查询教室、教师和课程信息,以及提出借用教室申请),管理人员(可进行日常事务的处理,如增加、删除、更新课程、教室、教师信息,并批准或拒绝借用教室的申请)。
(4)完整性要求
a、各种信息记录的完整性,信息记录内容根据实际情况判断是否能为空;
b、各种数据间相互的联系的正确性(外键、主键等的正确设置);
c、相同的数据在不同记录中的一致性(数据连接过程中合理使用表间的联系元素)。

2.3 功能需求

实现教师信息编号,姓名,性别,所属院系,职称等的管理
实现学生信息,学号,姓名,院系号,身份证号等的管理
实现教室信息编号,教室类型,教室容量,教室多媒体状况的管理
创建规则用于限制性别项只能输入“男”或“女”
创建视图查询不同类型的不同规模教室以及使用情况
创建存储过程生成指定教师的课程表
创建触发器删除教师信息时删除对应的教师开课信息
建立数据库相关表之间的参照完整性约束

3.概念结构设计

3.1 抽象出系统的实体

教师信息实体-属性图

学生信息实体-属性图

教室信息实体-属性图

课程信息实体-属性图

院系信息实体-属性图

3.2 设计分E-R图

图3.2.1 学生-课程 分E-R图

图3.2.2 学生-院系-教师 分E-R图

图3.2.3 教师-课程-教室 分E-R图

3.3 全局E-R图

图3.3.1 教室信息管理系统全局E-R图

4.逻辑结构设计

教室(教室编号,教室类型,教室容量,教室多媒体)
院系 (院系号,院系名称)
课程(课程号,课程名称,课程学分,课程类型,开课院系号)
教师(教师编号,教师姓名,性别,所属院系,职称, 身份证号)
学生(学号,姓名,院系号,身份证号)
教师开课表(教室号,上课时间,上课时间段,教师号,课程号,院系号)
教室借用表(教室号,学号,使用日期,借用时间段,工作日,用途,审批状态)

4.1 数据字典







5.数据库物理设计与实施

建立数据库和基本表

教室信息表

课程信息表

院系信息表

学生信息表

教师信息表

教室借用表

教师开课信息

数据库关系图

6.数据操作要求及实现

6.1 数据查询、更新操作

实现教师信息编号,姓名,性别,所属院系,职称等的管理
select * from 教师信息

实现学生信息,学号,姓名,院系号,身份证号等的管理
select * from 学生信息

实现教室信息编号,教室类型,教室容量,教室多媒体状况的管理
select * from 教室信息

6.2 视图

创建视图查询不同类型的不同规模教室以及使用情况
–创建需要多媒体普通教室的教室信息查询视图

select * from 多媒体普通教室信息查询
  • 1

–创建需要多媒体阶梯教室的教室信息查询视图

select * from 多媒体阶梯教室信息查询
  • 1


–创建不需要多媒体普通教室的教室信息查询视图

select * from 无多媒体普通教室信息查询
  • 1


–创建不需要多媒体的阶梯教室信息查询视图

select * from 大教室信息查询
  • 1


–对学生申请信息的视图查询

select * from 申请信息
  • 1

6.3 触发器

创建触发器删除教师信息时删除对应的教师开课信息

delete from 教师信息 where 教师编号='10101080'select * from 教师信息select * from 教师开课信息
  • 1
  • 2
  • 3

6.4 存储过程

创建存储过程生成指定教师的课程表

execute 教师课程表 '10101080'
  • 1

7.总结

通过这次数据库课程设计,我更加深刻的学习了数据库的知识,感觉到要做出一个好的系统绝对不是一件容易的事情,它必须要经过详细的调查,了解所有涉及的流程和数据,考虑到各种可能出现的情况以及处理的方法。在建立与之相适应的数据库时,不仅要全面而且要完整,这个过程是很困难的。不仅如此,还有例如安全性和完整性地问题,对存储过程地优化以及效率等问题,也都需要在各方面考虑。
同时我也认识到,在设计数据库之前,做好充分的准备工作也是十分必要、十分重要的,它综合了Sql Server 2008 的数据库、表、视图、触发器、存储过程以及函数的创建的应用,以及数据的增删查改等简单操作,让我真切地感受到了若想要在这方面精通,就必须下苦功夫。

参考文献

[1]陈素芳.浅析SQL Server数据库的性能优化方法[J].信息记录材料,2021,22(05):90-91.DOI:10.16009/j.cnki.cn13-1295/tq.2021.05.049.
[2]王晓燕.MySQL查询的基本原则[J].办公自动化,2021,26(15):61-62+47.
[3]王珊 萨师煊.数据库系统概述(第五版)[J].高等教育出版社,2014.9: 978-7-04-040664-1
[4]赵杰,杨丽丽,陈雷. 数据库原理与应用[M].人民邮电出版社:, 201302.285.
[5]陈显通. 数据库基础与应用—SQL Server 2005[M].重庆大学出版社:国家骨干高职院校重点建设项目——软件技术专业系列教材, 201501.213.
[6]唐扬. 数据库游标与触发器机制的研究与实现[D].国防科学技术大学,2004.

附部分代码

-创建存储过程生成指定教师的课程表use 教室信息管理gocreate proc 教师课程表(@教师编号 int)asselect 教师信息.教师姓名 教师名,教室信息.教室编号 教室号,课程信息.课程名称 课程名,教师开课信息.星期 星期,教师开课信息.上课时间段 节次from 教师开课信息	join 教室信息 on 教师开课信息.教室编号=教室信息.教室编号	join 教师信息 on 教师开课信息.教师编号=教师信息.教师编号	join 课程信息 on 教师开课信息.课程号=课程信息.课程号where 教师开课信息.教师编号=@教师编号order by 教师开课信息.星期 desc,教师开课信息.上课时间段 ascGOexecute 教师课程表 '10101081'--创建触发器删除教师信息时删除教师的开课信息create trigger 教师删除触发器on 教师信息instead of deleteasbegindelete 教师信息 where 教师编号=(select 教师编号 from deleted)delete 教师开课信息 where 教师编号=(select 教师编号 from deleted)endgo
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发