资源描述
。
学生选课管理系统数据库设计
- MySql项目
文档作者:李国辉
当前版本:V1.0
目 录
1.系统概述 3
2.开发环境与工具 3
3. 数据库命名规范 3
3.1术语定义 3
3.2 基本原则 3
4.数据库分析 4
4.1数据表分析 4
4.2 数据库实体图 4
4.3数据库E-R图 5
4.4数据表关系图 7
4.5数据字典 7
5. 业务功能模拟 8
5.1 添加数据 8
5.2 教室查询 8
5.3 教师查询 8
5.4 选修课程查询 9
5.5 选修课表数据 9
5.6 学生数据 9
5.7 选修报名/成绩数据 9
5.5 备份数据 9
5.6 思虑题 9
6. 扩展性功能 9
1.系统概述
随着无纸化办公的普遍实现,信息的自动处理以及网络式的信息交互方式已经被人们广泛应用。让计算机来管理学生的信息是现在各个高校都在积极进行的工作之一,也是高校教学管理工作的重要内容之一。网上选课与传统的选课方式相比更加节约资源,增加了学生选课自主权。
学生选课系统作为一种现代化的教学技术,越来越受到人们的重视,是一个学校不可或缺的部分, 学生选课系统就是为了管理好选课信息而设计的。学生选课系统的将使选课管理工作规范化、系统化、程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够准确、及时、有效的查询和修改学生选课情况。
与传统的选课方式相比,网上选课系统利用局域网为学生选课带来了极大的便捷。学生在公共机房,或者宿舍的个人电脑上便可以通过校园网络来选课。在选课期间内,学生能够使用选课系统灵活的修改自己的选课情况,大大提高了学校选课工作的效率。教务处的教师则可以通过选课系统的管理员子系统来管理学生的选课情况,使得学生选课工作达到系统化和自动化,大大提高了学校的工作效率,为广大师生及相关人员节省了极多的时间。
2.开发环境与工具
数据库:MS SQLServer2008
系统环境:Windows2003/Server/Windows 2008 Server /Win7/Win8/Win10
网络:10M以上局域网
3. 数据库命名规范
1. 方便代码的交流和维护。
2. 不影响编码的效率,不与大众习惯冲突。
3. 使代码更美观、阅读更方便。
4. 使代码的逻辑更清晰、更易于理解。
3.1术语定义
1. Pascal 方法:将标识符的首字母和后面连接的每个单词的首字母都大写。可以对三字符或更多 字符的标识符使用。例如:BackColor
2. Camel 方法:标识符的首字母小写,而每个后面连接的单词的首字母都大写。例如:backColor
3.2 基本原则
1. 以大小写敏感编写SQL语句。
2. 尽量使用Unicode 数据类型。
3. 优先使用连接代替子查询或嵌套查询。
4. 尽量使用参数化SQL查询代替语句拼接SQL查询。
5. 禁止使用[拼音]+[英语]的方式来命名SQL对象或变量。
6. 尽量使用存储过程代替SQL语句。
7. 建议采用Pascal样式或Camel样式命名数据库对象。
8. 大写T-SQL语言的所有关键字,谓词和系统函数。
4.数据库分析
由于系统的使用主体是教师和学生,因此对系统的信息要求可分为以下几个方面
4.1数据表分析
根据学生选课管理信息系统的需求分析,需要以下的数据表:
1. 教师的基本信息,主要包括教师编号、教师姓名、性别、年龄、学历、职称、毕业院校、健康状况等。
2. 学生的基本信息,主要包括学生学号、姓名、所属院系、已选课情况。
3. 教室的基本信息,主要包括教室编号、可容纳人数等。
4. 选课课程的基本信息,主要包括课程编号、课程名称、学时、学分、课程介绍。
5. 选课课表的基本信息,主要包括课程编号、教师编号、教室编号、上课星期、上课时间等。
6. 选课报名的基本信息,主要包括课程编号、学生学号、报名时间等。
7. 选课成绩的基本信息,主要包括课程编号、学生学号、成绩、录入时间等。
4.2 数据库实体图
图1-1至1-6是系统数据库的实体图。
图 1-1 教室实体图
图1- 2教师实体图
图 1-3学生实体图
图 1-4选课课程实体图
图 1-5选课课表实体图
图 1-6选课报名/成绩实体图
4.3数据库E-R图
E-R图也即实体-联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
4.4数据表关系图
学生选课管理系统数据库关系如图1-7。
图1- 7 学生选课管理系统数据库设计
4.5数据字典
1.教室数据字典:
属性名
存储代码
类型
长度
备注
教室编号
RoomNo
varchar
10
教室门牌号
座位数目
RoomCount
integer
3
教室的座位数,也就是可容纳学生数
2.选课课程数据字典:
属性名
存储代码
类型
长度
备注
课程编号
CourseNo
varchar
10
选课课程的编号
课程名称
CourseName
varchar
16
选课课程的名称
学时
CourseCircle
integer
3
也就是课时
学分
CourseCredit
integer
3
课程修满后的分数
课程介绍
CourseIntroduce
varchar
2048
选修课介绍说明
3.教师数据字典:
属性名
存储代码
类型
长度
备注
教师编号
TeacherNo
varchar
20
教师的编号
教师名称
TeacherName
varchar
20
教师的姓名
性别
Gender
boolean
1
教师的性别
年龄
Age
short
3
教师的年龄
学历
EducationRecord
char
1
教师的学历水平
职称
PostTitle
char
1
教师的当前职称
毕业院校
GraduateSchool
varchar
256
教师毕业的学校名
4.选课课表数据字典:
属性名
存储代码
类型
长度
备注
课程编号
CourseNo
varchar
10
课程编号
教师编号
TeacherNo
varchar
20
代课教师编号
教室编号
RoomNo
varchar
10
上课的教室编号
上课星期
Weekday
char
1
星期几
上课时间
Time
varchar
12
几点到几点
5.学生数据字典:
属性名
存储代码
类型
长度
备注
学生学号
StudentNo
varchar
20
学生编号
学生姓名
StudentName
varchar
20
学生姓名
性别
Gender
boolean
1
学生性别(男、女)
年龄
Age
integer
3
学生年龄
所属院系
DeptNo
varchar
10
学生所属院系
入学时间
InTime
varchar
10
学生入学时间(20160901)
6.选课报名数据字典:
属性名
存储代码
类型
长度
备注
课程编号
CourseNo
String
10
选修课程编号
学生学号
StudentNo
String
20
报名课程的学生学号
报名时间
SignUpTime
datetime
学生报名的时间
7.选课成绩数据字典:
属性名
存储代码
类型
长度
备注
课程编号
CourseNo
String
10
选修课程编号
学生学号
StudentNo
String
10
报名课程的学生学号
成绩
Score
integer
学生选修课程的成绩
录入时间
EnterTime
datetime
选修课程录入时间
5. 业务功能模拟
对数据库的表进行增、删、改、查的相关操作,编写SQL脚本实现。
5.1 添加数据
1. 系统所有的表中,插入相关的测试数据,至少5条。
2. 提示:可以使用insert 语句实现。
5.2 教室查询
1. 查询所有的教室信息,按教室编号排序;
2. 查询所有座位超过100的教室信息。
5.3 教师查询
1. 可查询选修课教师的个人信息;
2. 查询年龄大于30并且毕业于指定学校的教师信息。
5.4 选修课程查询
1. 可查询所有选修课程的详细信息
2. 查询课时少于50而学分大于2的选修课程信息。
5.5 选修课表数据
1. 查询指定选修课的课表安排;
2. 查询周三的选修课;
3. 查询使用教室最多的选修课信息。
5.6 学生数据
1. 按院系统计学生的数量;
2. 查询同一年入学的计算机系统学生信息。
5.7 选修报名/成绩数据
1. 统计本次报名选修课的学生数量;
2. 统计本次选修课通过的学生数量。
5.5 备份数据
1. 把数据库内容进行备份,生成bak文件。
5.6 思虑题
1. 打印一周的选修课程安排。(提示:进行教师表与课程表与教室表的多表连接)
2. 查询学生的选课上课信息。(提示:学生表与课程表与教室表的多表连接)
6. 扩展性功能
1. 选课报名可以和成绩分开,方便管理。
2. 生成数据库脚本,方便进行数据库移植,进行应用系统的开发。
THANKS !!!
致力为企业和个人提供合同协议,策划案计划书,学习课件等等
打造全网一站式需求
欢迎您的下载,资料仅供参考
3.
-可编辑修改-
展开阅读全文