《SQL Server数据库 课设 学生选课系统》由会员分享,可在线阅读,更多相关《SQL Server数据库 课设 学生选课系统(19页珍藏版)》请在金锄头文库上搜索。
1、SQL Server数据库课程设计题目:学生选课系统系 别:计算机信息与技术系专 业: 班 级: 学 号: 学生姓名: 指导教师: 2013年06月目录1需求分析11.1目标11.2主要功能11.3需求分析11.4系统功能设计12概念结构设计与逻辑设计32.1数据库概念结构设计32.2 实体间联系52.3逻辑结构设计63物理设计73.1数据库的建立73.2创建表73.3管理基本表94访问数据库124.1给表中添加数据124.2数据库的更新135数据库的维护14总结16参考文献171需求分析1.1目标 随着现代化的进程,计算机愈来愈普及,所以大多数的高校都实行了网上选课,它极大地方便了学生进行选
2、课和看自己的课表,而这些都是通过学生选课系统来管理的。有了它可以促进高校教育的计算机信息化进程,提高工作效率,对于系统本身而言,应该具有较高的安全性。能够极大地满足学生选课,以及学生对选课后的学校对选课信息的管理。1.2主要功能 该系统总体实现学生性息管理、课程信息管理、学生选课等功能;该系统分两类型用户:1、学生2、管理员、3教师。三个用户通过登录进入不同的界面。学生主要实现选课,通过查询、浏览本学期所开设课程进行选课与退选课程;管理员通过身份验证进入系统并对授课老师的信息进行增加、删除、修改、查询。同时也可以发布选课信息。老师登陆后亦可以查看自己所带院系的学生选课及所选课程的成绩。1.3需
3、求分析 系统的功能模块应分为系统管理员需求、教师需求、学生需求三个部分。管理员可以通过超级用户身份登录,对系统进行全面的管理维护, 老师、学生以不同用户的身份进入不同的界面,执行不同的操作。 (1)学生的需求:能进行选课,查看自己选的课,查看管理员发布的可选课的课程和上课时间上课地点以及任课老师(2)教师的需求:查看自己的个人信息,及自己所受课的学生的信息,及学生的成绩,并且可以对自己所授课的上课时间地点进行增加和修改。(3)管理员的需求:主要是对整个系统进行维护,包括设置选课时段,选课规则,如选课前学生不可登录,选课后不能更改只能查看。管理员对系统的管理包括添加删除用户。1.4系统功能设计学
4、生选课信息系统主要实现学生信息的增加、删除、更改、查询的功能。主要功能模块,如图1.1所示。学生选课系统学生管理需求教师管理需求管理员管理需求插入学生信息删除教师信息查看教师信息修改教师信息插入教师信息删除学生信息查看学生信息修改学生信息插入课程信息删除课程信息查看课程信息修改课程信息图1.1学生选课系统表2概念结构设计与逻辑设计2.1数据库概念结构设计 根据上面的设计规划出的的实体及他们的属性1)学生实体:属性:姓名、学号、班级、性别。2)教师类实体:属性:姓名、教师号、性别、密码。3)课程实体:属性:课程号、课程名、课程类别、选课上线。4)管理员实体:属性:姓名、密码、编号、年龄。学生选课
5、局部E-R图如图2.1所示:班级性别学号姓名学生选课NM课程课程类别选课上线课程名课程号图2.1学生选课E-R图教师课程局部E-R图如图2.2所示:课程号姓名密码课程名课程授课教师11课程类别教师号选课上线性别图2.2教师课程E-R图管理员课程局部E-R图如图2.3所示:课程号姓名课程名密码管理员课程管理3N课程类别编号选课上线年龄图2.3管理员课程E-R图2.2 实体间联系(1) 一个学生只能选修一门课程,一门课程可以被多个学生选。(2) 一名教师只能教一门课程。(3) 一个学生选课系统中最多有三个管理员。实体间联系的E-R图如图2.4所示:课程号授课选课管理课程类别课程名选课上线课程MN1
6、3N1管理员学生教师密码性别性别姓名姓名姓名密码性别班级教师号编号学号图2.4学生选课系统E-R图2.3逻辑结构设计 概念结构设计所得的E-R模型是对用户需求的一种抽象表达形式,它是独立的数据模型。数据库逻辑结构的设计分是把概念设计得到的E-R图转化为关系模型。(1) 学生(学号(Sno),姓名(Sname),性别(Ssex),班级(Sclass)。(2) 教师(姓名(Tname),性别(Tsex),密码(Tpass),教师号(Tno)。(3) 课程(课程号(Cno),课程名(Cname),课程类别(Csort),选课上线(Climit)。(4) 管理员(姓名(Mname),性别(Msex),
7、编号(Mno),密码(Mpass)。3物理设计3.1数据库的建立1. 连接数据库服务器。2. 在SSMS操作界面中建立数据库。展开服务器,右击“数据库”结点,在弹出的快捷菜单中选“新建数据库”,弹出“新建数据库”对话框。在对话框中输入各选项后按“确定”钮,即可完成数据库建立。3.2创建表创建数据库student表如图3.1所示:图3.1 student表创建数据库tercher表如图3.2所示:图3.2 teacher表创建数据库course 表如图3.3所示:图3.3 course表创建数据库管理员表如图3.4所示:图3.4管理员表3.2管理基本表如果要在某一字段前插入一个新字段,右击该字段
8、,在弹出的快捷菜单中选择“插入列”命令;如果要删除某列,右击该列,在弹出的快捷菜单中选择“删除列”命令。(1)基本表修改例1在student表中增加年龄列“sage”,数据类型为tinyint,允许为空,新增后的student表如图3.5所示。图3.5新增后的student表例2删除student表中增加年龄列“sage”,删除后的表如图3.6所示。图3.6 student表(2)建立和管理视图创建三班学生的视图,如图3.7所示。图3.7三班学生视图(4) 建立和管理索引如在“studentdb”数据库中,为“student”表创建基于“sname”列的唯一、非聚集索引st_sname_ind
9、ex如图3.8所示。图3.8建立索引图4访问数据库4.1给表中添加数据先打开创建的学生选课系统“studentdb”数据库,再在其中的表中添加数据如图4.1添加数据后的表所示。StudentCourseTeacher管理员 图4.1添加数据后的表4.2数据库的更新(1)查询超过200人的选课上线代码如图4.2所示。图4.2选课上线代码图(2)查询课程总门数如图4.3所示。图4.3课程总门数代码图(3)查询与李勇同班的学生如图4.4所示。4.4与李勇同班学生代码图5数据库的维护(1)启动SSMS,在“对象资源管理器”中选择服务器,展开“数据库”节点,右击目标数据库,在弹出的快捷菜单选择“属性”命
10、令。(2)单击“属性”命令,打开“数据库属性”对话框选完整。如图5.1数据库属性图所示。图5.1数据库属性图启动SSMS,在“对象资源管理器”中选择服务器,展开“服务器对象”,右击“备份设备”,在弹出的快捷菜单中单击“新建备份设备”,打开新建备份数据对话框,如图5.2备份设备所示。图5.2备份设备图总结在这次的课程设计中,我遇到了很多困难,同时也学到了很多。这次课程设计也可以说是为毕业设计做了个预演,真正开始做的时候发现困难重重,这个时候发现自己所学的知识都只是皮毛,而且自己根本没有掌握那些知识,这需要我不断的学习,同时我还在图书馆里借了一些有关数据库的书。不断地发现问题并解决问题,经过这次课程设计我发现需求分析是很重要的,只要需求分析做好了,后面的就比较好做了。同时我发现自己的代码写的也不好,在SQL server中编译的很多程序都有一定的语法错误,所以我不断看书在编译。知道做好。这次课程设计基本上包括了我们所学的所有内容,差不多也算是考前复习吧。参考文献(1)TP311.138SQ 熊拥军 刘卫国 主编 数据库技术与应用实践SQL Server 北京 清华大学出版社 2007。(2)TP311.138SQ (高巍巍 主编)( 穆丽新 俞国红 侯相茹 副主编)(周屹 主审)数据库基础与应用(SQL Server2008)北京 清华出版社 2011。