《学生选课管理系统数据库设计.docx》由会员分享,可在线阅读,更多相关《学生选课管理系统数据库设计.docx(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、同学选课管理系统数据库设计-MySql项目文档作者:李国辉当前版本:vi.o名目1 .系统概述随着无纸化办公的普遍实现,信息的自动处理以及网络式的信息交互方式已经被人们广泛应用 让计算机来管理同学的信息是现在各个高校都在乐观进行的工作之一,也是高校教学管理工作的重 要内容之一。网上选课与传统的选课方式相比更加节省资源,增加了同学选课自主权。同学选课系统作为一种现代化的教学技术,越来越受到人们的重视,是一个学校不行或缺的部 分,同学选课系统就是为了管理好选课信息而设计的。同学选课系统的将使选课管理工作法律规范化、 系统化、程序化,避开选课管理的随便性,提高信息处理的速度和精确性,能够精确、准时、
2、有效的查询和修改同学选课状况。与传统的选课方式相比,网上选课系统采用局域网为同学选课带来了极大的便捷。同学在公共 机房,或者宿舍的个人电脑上便可以通过校内网络来选课。在选课期间内,同学能够使用选课系统敏 捷的修改自己的选课状况,大大提高了学校选课工作的效率。教务处的老师则可以通过选课系统的管 理员子系统来管理同学的选课状况,使得同学选课工作达到系统化和自动化,大大提高了学校的工作 效率,为广阔师生及相关人员节省了极多的时间。2 .开发环境与工具数据库:MSSQLServer2022系统环境:Windows2003/Server/Windows2022Server/Win7/Win8/Win 1
3、0 网络:10M以上局域网数据库命名法律规范1.便利代码的沟通和维护。2 .不影响编码的效率,不与大众习惯冲突。3 .使代码更美观、阅读更便利。4 .使代码的规律更清楚、更易于理解。术语定义1. Pascal方法:将标识符的首字母和后面连接的每个单词的首字母都大写。可以对三字符或更多字符的标识符使用。例如:BackColor2. Camel方法:标识符的首字母小写,而每个后面连接的单词的首字母都大写。例如:backColor基本原则1 以大小写敏感编写SQL语句。2 .尽量使用Unicode数据类型。3 .优先使用连接代替子查询或嵌套查询。4 .尽量使用参数化SQL查询代替语句拼接SQL查询。
4、5 禁止使用拼音+ 英语的方式来命名SQL对象或变量。6 尽量使用存储过程代替SQL语句。7 .建议采纳Pascal样式或Camel样式命名数据库对象。8 .大写T-SQL语言的全部关键字,谓词和系统函数。4.数据库分析由于系统的使用主体是老师和同学,因此对系统的信息要求可分为以下几个方面4.1 数据表分析依据同学选课管理信息系统的需求分析,需要以下的数据表:1.老师的基本信 息,主要包括老师编号、老师姓名、性别、年龄、学历、职称、毕业院校、健康状况等。2 .同学的基本信息,主要包括同学学号、姓名、所属院系、已选课状况。3.教室的基本 信息,主要包括教室编号、可容纳人数等。4 .选课课程的基本
5、信息,主要包括课程编号、课程名称、学时、学分、课程介绍。5.选 课课表的基本信息,主要包括课程编号、老师编号、教室编号、上课星期、上课时间等。6 .选课报名的基本信息,主要包括课程编号、同学学号、报名时间等。7.选课成果的基 本信息,主要包括课程编号、同学学号、成果、录入时间等。4.2 数据库实体图图1-1图1-2老师实体图图1-1敦图1-4选课课程实体图图1-5选课课表实体图4.3 数据库E-R图E-R图也即实体-联系图(EntilyRelationshipDiagram),供应了表示实体型、属性和联系的方法,用来 描述现实世界的概念模型。4.4数据表关系图同学选课管理系统数据库关系如图1-
6、7。口 EDccttvcCourscCouf8eNoVARCHAR(10) CourseWan wVARCHAR(16)Cour$OOclelNT .一 CoursOCrfurseScoreCot EtectiveCourseSignUp(SeNoVARCHAA90 HTInfoRoomNoVAfiCHA-j#_R(10ORoornCourrtlNTS3 JpT WDATEIIME SlWeMMo SliOjr:NoVARCHAR(20)EI&C!weCOurse_CourseNoVARCHAR0O)TOachbitnTo-)Tcnct)crNoVARCHAR20).TcachcrNaniCA
7、/ARCHAR(20) GenderBOOLEAN_ StudentlnloOWekdayCHAROTimVARCHAR( 12C;Roomln fti_RoomNoVARCHARIO0 E) &ctrvcCour5C.Cour$cNoVARCHAR VARCHAR(20) , StudentName VARCHAR(20lGofXtor BOOLEANDeptNo VARCHAA(IO) InTime VARCHARIO)图1-7同学选课管理系统数据库设计属性名存储代码类型长度备注教室编号RoomNovarchar10教室门牌号座位数目RoomCountinteger3教室的座位数,也就是可
8、容纳同学数2.选课课程数据字典:属性名存储代码类型长度备注课程编号CourseNovarchar10选课课程的编号课程名称CourseNamevarchar16选课课程的名称学时CourseCircleinteger3也就是课时学分CourseCreditinteger3课程修满后的分数课程介绍Coursclntroduccvarchar2048选修课介绍说明3.老师数据字典:属性名存储代码类型长度备注老师编号TeachcrNovarchar20老师的编号老师名称TcachcrNamcvarchar20老师的姓名性别Genderboolean1老师的性别年龄Ageshort3老师的年龄学历Ed
9、ucationRecordchar1老师的学历水平职称PostTillechar1老师的当前职称毕业院校GraduateSchoolvarchar256老师毕业的学校名4 .选课课表数据字典:属性名存储代码类型长度备注课程编号CourseNovarchar10课程编号老师编号TeacherNovarchar20代课老师编号教室编号RoomNovarchar10上课的教室编号上课星期Weekdaychar1星期几上课时间Timevarchar12几点到几点5.同学数据字典:属性名存储代码类型长度备注同学学号StudentNovarchar20同学编号同学姓名StudentNamevarchar2
10、0同学姓名性别Genderboolean1同学性别(男、女)年龄Ageinteger3同学年龄所属院系DeptNovarchar10同学所属院系入学时间InTimevarchar10同学入学时间 (20220901)6.选课报名数据字典:属性名存储代码类型长度备注课程编号CourseNoString1()选修课程编号同学学号StudentNoString20报名课程的同学学号报名时间SignUpTimedatetime同学报名的时间7.选课成果数据字典:属性名存储代码类型长度备注课程编号CourseNoString10选修课程编号同学学号StudentNoString10报名课程的同学学号成果
11、Scoreinteger同学选修课程的成果录入时间EnterTimedatetime选修课程录入时间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
12、选修课表数据1 .查询指定选修课的课表支配;2.查询周三的选修课;3.杳询使用教室最多的 选修课信息。5.6 同学数据1 .按院系统计同学的数量;2.查询同一年入学的计算机系统同学信息。选修报名/成果数据I.统计本次报名选修课的同学数量;2.统计本次选修课通过的 同学数量。5.5 备份数据1 把数据库内容进行备份,生成bak文件。5.6 思虑题1.打印一周的选修课程支配。(提示:进行老师表与课程表与教室表的 多表连接)2.查询同学的选课上课信息。(提示:同学表与课程表与教室表的多表 连接)6.扩展性功能1.选课报名可以和成果分开,便利管理。5.7 成数据库脚本,便利进行数据库移植,进行应用系统的开发。