(仅供参考)教务管理系统数据库设计
教务管理系统数据库设计报告

教务管理系统一、主页登录default.asp<% Option Explicit %><% Response.Buffer=True %><%If Trim(request.form("username"))<>"" AND Trim(request.form("pswd"))<>"" Then Dim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim userid,pswd,strsql,rsuserid=Request.Form("username")pswd=Request.Form("pswd")End IfIf request.form("D1")="学生" Thenstrsql="Select * From stu Where sno='"&userid&"'"Set rs=db.Execute(strsql)If pswd=rs("spin") ThenSession("stuid")=useridResponse.Redirect"student.asp"ElseResponse.write"密码错误"End IfElseIf request.form("D1")="教师" Thenstrsql="Select * From tea Where tno='"&userid&"'"Set rs=db.Execute(strsql)If pswd=rs("tpin") ThenSession("teaid")=useridResponse.Redirect"teacher.asp"ElseResponse.write"密码错误"End IfElseIf request.form("D1")="教务管理员" Thenstrsql="Select * From adm Where adm='"&userid&"'"Set rs=db.Execute(strsql)If pswd=rs("apin") ThenSession("admid")=useridResponse.Redirect"adm.asp"ElseResponse.write"密码错误"End IfElseSession("stuid")=""Session("teaid")=""Session("admid")=""End If%>二、学生用户界面(一)实现选课student.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("stuid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseDim stuid,cnoidstuid=Session("stuid")cnoid=Request.form("T1")Dim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Insert Into score(cno,sno) Values('"&cnoid&"','"&stuid&"')"Set rs=db.Execute(strsql)End Ifdb.closeSet db=Nothing%>(二)显示课表cou_list.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("stuid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"strsql="Select Distinct o,ame,cou.tno, cou.room From cou"Set rs=db.Execute(strsql)End if%><div align="center"><table border="1" width="80%" id="table2" cellpadding="0"> <tr> <td align="center">课程编号</td><td align="center">课程名称</td><td align="center">任课教师</td><td align="center">上课地点</td></tr><%Do While Not rs.Eof%><tr> <td align="center"><%=rs("cno")%></td><td align="center"><%=rs("cname")%></td><td align="center"><%=rs("tno")%></td><td align="center"><%=rs("room")%></td></tr><%rs.MoveNextLoop%></table></div>(三)成绩查询mark.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("stuid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim rs,strsqlstrsql="Select * From score Where sno='"&Session("stuid")&"'"Set rs=db.Execute(strsql)End if%><td align="center" height="34">学号</td><td align="center" height="34">课号</td><td align="center" height="34">成绩</td></tr><%Do While Not rs.Eof%><tr><td align="center" ><%=rs("sno")%></td><td align="center" ><%=rs("cno")%></td><td align="center" ><%=rs("mark")%></td></tr><%rs.MoveNextLoop%>三、教师用户界面实现成绩录入功能teacher.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("teaid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseIf Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,cno,sno,markcno=Request.Form("T1")sno=Request.Form("T2")mark=Request.Form("T3")strsql="Update score Set mark='"&mark&"'Where cno='"&cno&"'And sno='"&sno&"'And tno='"&Session("teaid")&"'"db.Execute(strsql)Response.Write "添加成功"End If%>四、教务管理员登录界面adm.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"End If%>(一)课程信息维护1、显示课程信息adm_cou.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Select * From cou"Set rs=db.Execute(strsql)End if%><form method="POST" action=""><table border="0" width="100%" id="table8"><%Do While Not rs.Eof%><tr><td align="center" height="27"><%=rs("cno")%></td><td align="center" height="27"><%=rs("cname")%></td><td align="center" height="27"><%=rs("tno")%></td><td align="center" height="27"><%=rs("room")%></td><td align="center"height="27"><a href="update_cou.asp?cno=<%=rs("cno")%>">修改</a></td> <td align="center" height="27"><a href="dele_cou.asp?cno=<%=rs("cno")%>">删除</a></td> </tr><%rs.MoveNextLoop%></table></form>2、修改课程信息update_cou.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.write"请先登录"Response.Redirect "default.asp"ElseDim cnocno=Request.QueryString("cno")Session("cno")=cnoDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Select * From cou Where cno='"&cno&"'"Set rs=db.Execute(strsql)End If%>3、修改课程的执行程序update3.asp<% Option Explicit %><%Dim cnoidcnoid=Session("cno")If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""And Request.Form("T5")<>"" ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim cno,cname,tno,stime,room,strsqlcno=Request.Form("T1")cname=Request.Form("T2")tno=Request.Form("T3")room=Request.Form("T5")strsql="Update cou Set cno='"&cno&"',cname='"&cname&"',tno='"&tno&"',room='"&room&"' Where cno='"&cnoid&"'"db.Execute(strsql)Response.Redirect "adm_cou.asp"Response.Write"修改成功"End If%>4、删除课程的执行程序dele_cou.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.write"请先登录"Response.Redirect "default.asp"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,cnocno=Request.QueryString("cno")strsql="Delete From cou Where cno='"&cno&"'"db.Execute(strsql)Response.Redirect"adm_cou.asp"End if%>5、添加课程的执行程序add_cou.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.Redirect "default.asp"End IfIf Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""And Request.Form("T5")<>"" ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,cno,cname,tno,stime,roomcno=Request.Form("T1")cname=Request.Form("T2")tno=Request.Form("T3")room=Request.Form("T5")strsql="Insert Into cou(cno,cname,tno,room) Values('"&cno&"','"&cname&"','"&tno&"','"&room&"')"db.Execute(strsql)Response.Redirect"add_cou.asp"Response.write"添加成功"End If%>(二)教师信息维护1、显示教师信息adm_tea.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Select tno,tname,ttel From tea"Set rs=db.Execute(strsql)End if%><form method="POST" action=""><table border="0" width="100%" id="table8"><%Do While Not rs.Eof%><tr><td width="20%" align="center"><%=rs("tno")%></td><td width="20%" align="center"><%=rs("tname")%></td><td width="19%" align="center"><%=rs("ttel")%></td><td width="19%" align="center"><a href="update_tea.asp?tno=<%=rs("tno")%>">修改</a></td><td width="19%" align="center"><a href="dele_tea.asp?tno=<%=rs("tno")%>">删除</a></td></tr><%rs.MoveNextLoop%></table></form>2、修改教师信息update_tea<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.write"请先登录"Response.Redirect "default.asp"Dim tnotno=Request.QueryString("tno")Session("tno")=tnoDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Select * From tea Where tno='"&tno&"'"Set rs=db.Execute(strsql)End If%>3、修改教师信息的执行程序update2.asp<% Option Explicit %><%Dim tnoidtnoid=Session("tno")If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim tno,tname,ttel,strsqltno=Request.Form("T1")tname=Request.Form("T2")ttel=Request.Form("T3")strsql="Update tea Set tno='"&tno&"',tname='"&tname&"',ttel='"&ttel&"'Where tno='"&tnoid&"'"db.Execute(strsql)Response.Redirect"adm_tea.asp"ElseResponse.Write"请将所有信息填写完整"Response.Write"<a href='adm_tea.asp'>重新修改</a>"End If%>4、删除教师信息的执行程序dele_tea.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.write"请先登录"Response.Redirect "default.asp"ElseSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,tnotno=Request.QueryString("tno")strsql="Delete From tea Where tno='"&tno&"'"db.Execute(strsql)Response.Redirect"adm_tea.asp"End if%>5、添加信息教师信息的执行程序add_tea.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"End IfIf Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,tno,tname,tteltno=Request.Form("T1")tname=Request.Form("T2")ttel=Request.Form("T3")strsql="Insert Into tea(tno,tname,ttel) Values('"&tno&"','"&tname&"','"&ttel&"')"db.Execute(strsql)Response.Redirect"add_tea.asp"Response.write"添加成功"End If%>(三)学生信息维护1、显示学生信息adm_stu.asp<% Option Explicit %><% Response.Buffer=True%><%If Session("admid")="" ThenResponse.Redirect "default.asp"Response.write"请先登录"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Select distinct sno,sname,ssex,class From stu"Set rs=db.Execute(strsql)End if%><form method="POST" action="update_1.asp"><table border="0" width="100%" id="table8"><%Do While Not rs.Eof%><tr><td width="17%" align="center"><%=rs("sno")%></td><td width="16%" align="center"><%=rs("sname")%></td><td width="16%" align="center"><%=rs("ssex")%></td><td width="16%" align="center"><%=rs("class")%></td><td width="16%" align="center"><a href="update_stu.asp?sno=<%=rs("sno")%>">修改</a> </td><td width="16%" align="center"><a href="dele_stu.asp?sno=<%=rs("sno")%>">删除</a></td> </tr><%rs.MoveNextLoop%></table></form>2、修改学生信息update_stu.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.write"请先登录"Response.Redirect "default.asp"ElseDim snosno=Request.QueryString("sno")Session("sno")=snoDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,rsstrsql="Select * From stu Where sno='"&sno&"'"Set rs=db.Execute(strsql)End If%>3、修改学生信息的执行程序update1.asp<% Option Explicit %><%Dim snoidsnoid=Session("sno")If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""And Request.Form("T4")<>"" ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim sno,sname,ssex,sclass,strsqlsno=Request.Form("T1")sname=Request.Form("T2")ssex=Request.Form("T3")sclass=Request.Form("T4")strsql="Update stu Set sno='"&sno&"',sname='"&sname&"',ssex='"&ssex&"',class='"&sclass&"'Wheresno='"&snoid&"'"db.Execute(strsql)Response.Redirect"adm_stu.asp"ElseResponse.Write"请将所有信息填写完整"Response.Write"<a href='adm_stu.asp'>重新修改</a>"End If%>4、删除学生信息的执行程序dele_stu.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.write"请先登录"Response.Redirect "default.asp"ElseDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,snosno=Request.QueryString("sno")strsql="Delete From stu Where sno='"&sno&"'"db.Execute(strsql)Response.Redirect"adm_stu.asp"End if%>5、添加学生信息的执行程序add_stu.asp<% Option Explicit %><% Response.Buffer=True %><%If Session("admid")="" ThenResponse.Redirect "default.asp"End IfIf Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""And Request.Form("T4")<>"" ThenDim dbSet db=Server.CreateObject("ADODB.Connection")db.Open "jiaowu"Dim strsql,sno,sname,ssex,sclasssno=Request.Form("T1")sname=Request.Form("T2")ssex=Request.Form("T3")sclass=Request.Form("T4")strsql="Insert Into stu(sno,sname,ssex,class) Values('"&sno&"','"&sname&"','"&ssex&"','"&sclass&"')"db.Execute(strsql)Response.Redirect"add_stu.asp"Response.write"添加成功"End If%>3.2.1 表1、由于在该教务管理系统中加入了较为复杂的XML 代码,所以在这里只给出了主要的与系统功能相关的ASP文件中的VBScript代码。
数据库设计教务管理系统

计算机科学与技术学院、软件学院数据库设计与开发实验报告教务管理系统学生XX:学号:班级:指导教师:目录第1 章需求分析....................................................................................................................... . (3)第2 章数据库设计................................................................................................................... . (3)2.1E-R 图分析 (3)2.2 数据库表设计 (4)2.2.1zhj_course表构造 (4)2.2.2zhj_student表构造 (4)2.2.3 zhj_teacher表构造 (4)2.2.4 zhj_C_T表构造 (4)2.2.5 zhj_C_S表构造 (4)第3 章数据库程序设计 (5)3.1 数据库及表的定义 (5)3.2 为数据库各表建立索引 (5)3.3 创立各表的存储过程 (5)3.3.1 普通存储过程〔无参数〕 (6)3.3.2 带参数的存储过程 (7)3.3.3 带output参数的存储过程 (7)3.4 触发器设计 (8)3.4.1 插入触发器 (8)3.4.2 更新触发器 (9)3.4.3 删除触发器 (9)3.5 游标的应用 (10)第4 章用户交互界面 (11)4.1 、登录界面模块 (11)4.2 、学生登录模块 (12)4.2.1 个人信息管理 (12)4.2.2 选课模块 (13)4.2.3 查看与删除选课 (13)4.3 、教师登录模块 (14)4.3.1 选择授课............................................... . (14)4.3.2 查看授课 (14)4.3.3 录入成绩 (14)4.4 、系统管理员登录模块 (16)4.4.1 学生管理 (16)4.4.2 教师管理 (18)4.4.3 课程管理 (18)4.4.4 选课管理 (18)4.4.5 授课管理 (18)4.4.6 查看学生所选课程数目总分平均分 (18)第5 章总结 (19)第一章需求分析问题提出:每年系主任诽课都会遇到困难。
教务管理系统数据库设计

教务管理数据库系统课程设计目录1、需求分析 (2)1.1 信息要求: (2)1.2 处理要求: (2)1.3 安全性与完整性要求: (2)1.4 系统功能的设计和划分 (2)第一部分:用户管理部分 (3)第二部分:管理员管理部分 (3)2、概念设计 (3)2.1概念模型(E-R图): (3)2.2数据字典: (5)a.数据项 (5)b、数据结构 (5)c、数据流 (5)d、数据存储 (6)e、处理过程 (6)2.3 数据流图 (7)3、逻辑结构设计 (7)3.1 E-R图向关系模型的转换(关系的码用下横线表出) (7)3.2 设计用户子模式 (8)4、物理设计 (8)4.1 选择存取方法 (8)4.2 确定数据库的存储结构 (8)4.3 评价物理结构 (9)5、系统实施 (9)6、运行维护 (10)1、需求分析1.1 信息要求:教务管理系统涉及的实体有:●教师——工作证号、姓名、职称、电话等;●学生——学号、姓名、性别、出生年月等;●班级——班号、最低总学分等;●系——系代号、系名和系办公室电话等;●课程——课序号、课名、学分、上课时间及名额等。
这些实体之间的联系如下:●每个学生都属于一个班,每个班都属于一个系,每个教师也都属于一个系。
●每个班的班主任都由一名教师担任。
●一名教师可以教多门课,一门课可以有几位主讲老师,但不同老师讲的同一门课其课序号是不同的(课序号是唯一的)。
●一名同学可以选多门课,一门课可被若干同学选中。
●一名同学选中的课若已学完,应该记录有相应成绩。
●本单位学生、教师都有重名,工作证号、学号可以作为标识。
1.2 处理要求:教学系统主要提供数据维护、选课和信息查询。
其中常见的查询有:系统中各对象的基本信息查询。
查询指定班、系的学生信息(名单、人数等)。
查询学生的成绩、学分情况。
查询教师授课情况和学生选课情况……。
1.3 安全性与完整性要求:●安全性要求:1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;2.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;3.系统应对不同用户设置不同的权限,区分不同的用户,如学生,教师,系统管理员。
教务管理系统数据库设计

欢迎阅读教务管理系统数据库(SQL Server 2008 + delphi7)第三章系统设计 (4)第四章系统功能 (9)第五章系统实现 (9)第六章源程序附录 (15)第七章参考文献 (73)第一章系统概述学校学生管理信息系统是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统(Management Information System)。
它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。
能有效的帮助学校和老师掌握学生的情况,为学生提供成绩跟课程方面的查询。
本系统是以delphi7编辑用户界面,以SQL server 2008为数据源后台而成的学生2)能对各库表进行输入、修改、删除、添加、查询、打印等基本操作。
3)新生入校登记后可即时选课,老生每学期开始前可选课或作选课调整,一般要选共约20学分的若干门课程。
4)能明细查询某学生的选课情况及某课程的选修学生情况。
5)能统计查询出某学生的成绩单(包括总成绩、平均成绩、不及格门数等)及某门课的选课人数、最高分、最低分、平均成绩等统计信息。
6)能分析出某教师的教学质量情况(可根据该教师所任所有课优良数平均超过一定百分比来粗略评定)。
7)其他你认为子系统应有的查询、统计功能。
8)要求子系统设计得界面友好,功能选择方便合理,并适当考虑子系统在其安全性、完整性、备份、恢复等方面的功能要求2、可行性分析1.项目目标:学生和老师可以方便的进行各自所需要的信息管理活动,同时可以查询和修改各自的信息,以便学校管理。
2.运行环境:(1)以Windows98 以上/ME/2000/XP作为学生选课管理系统的后台操作系统。
(2)前台开发程序为DELPHI,SQL Server 2008。
(3)后台数据SQL Server 2008。
(4)主要硬件设备:PC机一台。
表与表之间的关系如下图所示:E-R 关系图此模块为教职工操作模块。
教务管理系统数据库设计

教务管理系统数据库(SQL Server 2008 + delphi7)实验报告班级:姓名:学号:指导教师:完成日期:目录第一章系统概述 (3)第二章系统分析 (3)第三章系统设计 (4)第四章系统功能 (9)第五章系统实现 (9)第六章源程序附录 (15)第七章参考文献 (73)第一章系统概述学校学生管理信息系统是针对学校人事处的大量业务处理工作而开发的管理软件,是典型的管理信息系统(Management Information System).它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。
能有效的帮助学校和老师掌握学生的情况,为学生提供成绩跟课程方面的查询。
本系统是以delphi7编辑用户界面,以SQL server 2008为数据源后台而成的学生信息管理系统。
本系统是以计算机为基础,由人和计算机结合的对信息进行收集、存储、维护、加工、传递和使用的一种管理系统,其目的是使人流、物流、资金流和信息流处于最佳状态,以最少的资源投入获得最佳的综合效益。
本系统主要包括学生信息管理模块、教师信息管理模块、课程信息管理模块、成绩信息管理模块和系统维护模块等部分。
在校务管理中,为有关部门提供完整、综合、共享的信息,对于学校的教育管理、教务和科研等都有很大的实用价值。
第二章系统分析1、问题定义随着科学技术的不断提高,计算机科学日渐成熟,其强大功能已为人们深刻认识,它已进入人们生活的各个领域,并发挥了越来越重要的作用,针对人工管理的缺点,最好的解决办法就是借助计算机技术提供一个电子化的学生信息管理平台。
为了更好地管理学生和教职工的资料文档,我开发一个软件工程学生信息管理系统。
教师和学生可以应用该系统实现如下功能:1、可随时查询出不同系及各系教师与各系学生情况,系、教师与学生各反映如下情况:系:系号、系名、系负责人、专业数等。
教师:工号、姓名、性别、职称、工龄、出生年月、基本工资等。
数据库设计教务管理系统

计算机科学与技术学院、软件学院数据库设计与开发实验报告教务管理系统学生姓名:学号:班级:指导老师:目录第1 章需求分析....................................................................................................................... . (3)第2 章数据库设计................................................................................................................... . (3)2.1E-R 图分析 (3)2.2 数据库表设计 (4)2.2.1zhj_course表结构 (4)2.2.2zhj_student表结构 (4)2.2.3 zhj_teacher表结构 (4)2.2.4 zhj_C_T表结构 (4)2.2.5 zhj_C_S表结构 (4)第3 章数据库程序设计 (5)3.1 数据库及表的定义 (5)3.2 为数据库各表建立索引 (5)3.3 创建各表的存储过程 (5)3.3.1 普通存储过程(无参数) (6)3.3.2 带参数的存储过程 (7)3.3.3 带output参数的存储过程 (7)3.4 触发器设计 (8)3.4.1 插入触发器 (8)3.4.2 更新触发器 (9)3.4.3 删除触发器 (9)3.5 游标的应用 (10)第4 章用户交互界面 (11)4.1 、登录界面模块 (11)4.2 、学生登录模块 (12)4.2.1 个人信息管理 (12)4.2.2 选课模块 (13)4.2.3 查看与删除选课 (13)4.3 、教师登录模块 (14)4.3.1 选择授课............................................... . (14)4.3.2 查看授课 (14)4.3.3 录入成绩 (14)4.4 、系统管理员登录模块 (16)4.4.1 学生管理 (16)4.4.2 教师管理 (18)4.4.3 课程管理 (18)4.4.4 选课管理 (18)4.4.5 授课管理 (18)4.4.6 查看学生所选课程数目总分平均分 (18)第5 章总结 (19)第一章需求分析问题提出:每年系主任诽课都会遇到困难。
教务管理系统后台数据库设计

教务管理系统后台数据库设计需求规格说明书第一章引言1.1编写目的任何一个web数据库应用系统都需要有后台数据库的支持,在本项目中就对要开发的教务管理系统的后台数据库进行设计以实现,在实施过程中要进行数据库的概念模型设计、逻辑模型设计及物理模型设计。
1.2数据库设计教务管理系统是学生和教师都比较熟悉的项目,因此比较好分析。
在教务管理系统中涉及到教师、学生、课程、成绩等实体,分别分析每一个实体的属性、实体之间的联系,绘制出E-R图。
随后在进行概念模型到逻辑模型的转变,将E-R图转变为一组关系模式,并对关系模式进行规范化处理。
然后进行数据库物理模型设计,将每个关系转化为一张二维表,对二维表的结构进行描述,尤其要考虑数据的完整性约束的设计,最后实现该数据库。
第二章任务设计与实施2.1任务计划根据对学院教务处相关职能部门的业务调研,进行需求分析,对数据库进行概念模型设计、逻辑模型设计以及物理模型设计。
2.2任务实施I.需求分析进过研究,对学院的教务管理业务做一总结:某学院下设有若干系部,系部有系部办公室、学生工作室、教研室等部门,系部所有教师分别隶属各个部门,系部教研室开设多门课程,一名教师可以教授多门课程。
系部所有学生以班级为单位组织教学及日常管理,学生每一学期需要学习多门课程(有必修课和选修课),学习结束后通过测试获取相应的成绩。
教务处负责学生学籍管理、课程排课管理、学生成绩管理、学生毕业资格审查等。
II.数据库概念模型设计(1)实体的确定。
进过分析,的确出问题涉及的实体有:系部、部门、教师、课程、班级、学生。
(2)实体属性的描述。
系部实体有下列属性:系部编号、系部名称、位置、人数、负责人、联系电话。
部门实体有下列属性:部门编号、部门名称、负责人、联系电话、业务领域。
教师实体有下列属性:教师编号、教师姓名、性别、生日、职称、职务、学历、参加工作时间。
课程实体有下列属性:课程编号、课程名称、课时、学分、课程性质、考核方式、开课时间。
3高校教务管理系统数据库设计

高校教务管理系统数据库设计1.1 数据库数据库是实现有组织地,动态地存储大量关联数据,方便多用户访问的计算机软硬件组成的系统;它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。
由于本软件的整体结构比较简单,所涉及数据相对来说也较少,组成文件的最小单位是记录。
1.2设备奔腾1g、内存128兆以上的计算机,局域网络环境。
1.3需求注释对于本软件,它的功能需求、性能需求、接口需求,从稳定性、可行性上都是可以的。
1.4功能树2 概念设计2.1 实体及其属性2.1.1 学生实体E-R图2.1.2 课程实体E-R图2.1.3 教师信息E-R图2.1.4综合ER图3 逻辑设计3.1 规范化得到最终的关系模式学生信息基本表(学号,姓名,性别,学院名称,班号,联系电话,入校日期,家庭住址),主码为学号,符合三范式。
课程信息表(课程编号,课程类型,分数)主码为课程编号,符合三范式。
教师信息表(教师编号,姓名,所在科室,联系电话)主码为教师编号,符合三范式。
考试信息表(学号,课程编号)主码为学号,课程编号,符合BCNF。
讲授信息表(教师编号,课程编号)主码为教师编号,课程编号,符合BCNF。
3.2 学生基本信息表3.3 课程信息表3.4 教师信息表3.5 考试信息表3.6 讲授信息表4 物理结构设计4.1物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。
4.2 建立数据表4.2.1 学生信息基本表的建立:CREATE TABLE Student( Sno CHAR ( 8 ) PRIMARY KEY ,Uname CHAR ( 8 ) UNIQUE,Sex CHAR ( 2 ),Sdept(8 ),Classno ( 8 ),Connect tel ( 11 ),Enter date (8 ),Family add (50 ));4.2.2 课程信息表的建立:CREATE TABLE Course( Course code CHAR (20 ) PRIMARY KEY ,Course type CHAR ( 8 ) ,Course grade CHAR ( 8)) ;4.2.3 教师信息表的建立:CREATE TABLE Teacher( Tno CHAR ( 8 ) PRIMARY KEY ,Tname CHAR ( 8 ) UNIQUE,Tdepartment(8 ),Tmoible( 11 ),);4.2.4考试信息表的建立:CREATE TABLE Exam( Sno CHAR ( 8 ) ,Course code CHAR (20 ) ,PRIMARY KEY ( Sno , Course code ) ,FOREIGN KEY ( Sno ) REFERENCES Student ( Sno ) ,FOREIGN KEY (Course code) REFERENCES Course (Course code));4.2.5讲授信息表的建立:CREATE TABLE Teaching( Tno CHAR ( 8 ) ,Course code CHAR (20 ) ,PRIMARY KEY (Tno , Course code ) ,FOREIGN KEY (Tno ) REFERENCES Teacher (Tno ) ,FOREIGN KEY (Course code) REFERENCES Course (Course code) );5 其他数据库对象的设计5.1 索引CREATE UNIQUE INDEX Stusno ON Student(Sno)CREATE UNIQUE INDEX Couno ON Course(Cno)CREATE UNIQUE INDEX Teano ON Teacher(Tno)5.2 视图CREATE VIEW IS_StudentASSELECT Sno,Sname,SdeptFROM StudentWhere Sdept=’IS’;2.2CREATE VIEW BTEACHERASSELECT Tname,TdepartmentFROM Teacher;5.3 触发器CREATE Trigger Delete _CourseBEFORE UPDATE ON CourseFOR EACH ROWAS BEGINIF(new.grade<60)THEN new.grade=nopass;END IF;END;5.4 存储过程CREATE procedure createetablesASCREATE table user 1(Uid int,Uname char(20)INSERTINTO use 1(Uid,Uname)V ALUES ('1','小明');)6 备份及恢复策略针对不同的故障,制定恢复策略数据库系统可能发生各种各样的故障,大致可以分为以下几类:1)事务内部故障2)系统故障3)介质故障4)计算机病毒要保证数据一致性是对数据库的最基本的要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
教务管理系统目录教务管理系统1、项目计划1.1项目背景:1.2系统开发目的:1.3定义:2、详细分析2.1、系统功能2.2、系统结构2.3、数据流图2.4、户类型与职能2.5、系统环境需求3、系统概念设计4、逻辑设计4.1系统关系模型4.2系统数据库表结构5、源码6、小结1、项目计划1.1项目背景:教务系统管理平台充分利用互联网络B/S管理系统模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务系统,用一个账号解决学校教务教学管理,并且学校可以自由选择学校需要的教务管理系统,灵活地定制符合学校自己实际情况的教务系统.1.2系统开发目的:提高学生,老师管理和操作事务的运作效率。
1.3定义:学生选课和老师评分必须在管理员的设置条件下进行。
2、详细分析2.1、系统功能设置学期时间:管理员登录系统后设置学期的时间,只有当时间为某个状态时,其他角色例如老师,才能做某些事情。
学期时间只能由角色管理员操作:包括对学期时间表的增加,删除,对某个学期时间状态的改变。
学生选课:当管理员设置为学期开始时,学生可以选课,学生选课受学分影响,只能选择总学分为多少的课程。
老师评分:当管理员设置为学期评分时,老师才可以评分。
个人信息管理:对自己个人信息进行添加和修改。
成绩查询:学生可以对自己成绩进行查询。
个人课表查询:按时间的不同,每个角色都有自己不同的课表。
2.2、系统结构功能描述:学生选课和老师评分必须在管理员设置学期的条件下进行。
2.3、数据流图顶层图0层图2.4、户类型与职能(1)管理员:对学期设置的管理每个阶段有不同的功能。
(2)老师:对选修了自己课程的学生评分。
(3)学生:选修科目。
2.5、系统环境需求系统模式本系统采用B/S模式作为开发模式硬件环境服务器端:高性能的计算机一台,普通的双绞线作为连接。
客户端:普通的计算机或者工作站,普通的双绞线作为连接。
软件环境服务器端:安装SQLSERVER2000的服务器版本3、系统概念设计系统ER图系统ER图说明:(1)同一的老师可以教多个科目,同一科目可以由多个老师教。
(2)同一学生可以选修多老师的科目,同一个老师的科目可以让多个学生选修。
4、逻辑设计4.1系统关系模型a) 选课成绩表(选课编号,平时成绩,期末成绩,综合成绩)b) 用户表(用户编号,用户名称,用户密码,性别,住址,电话)c) 班别表(班别编号,班别名称,班别描述)d) 系别(系别编号,系别名称,系别电话)e) 学期时间(学期编号,学期名称,学期开始时间,学期结束时间,学期状态)f) 课室表(课室编号,课室名称,课室面积,课室最大人数)g) 课程表(课程编号,课程名称,课程学分,课程类型,课程学时)h) 角色表(角色编号,角色名称,角色权限)i) 老师授课表(授课编号,授课时间)j) 上课地点表(地点编号)4.2系统数据库表结构数据库表索引表名中文名Score选课成绩表Sysuser用户表Classes班别表Dept系别表Items学期时间表Major课程表Classroom课室表Userstyle角色表Mdteacher老师授课表Majorroom上课地点表用户表(Sysuser)字段名字段类型长度主/外键字段值约束对应中文名Id varchar20P Not null用户编号classesid Varchar20f Not null班级编号Userstyleid Varchar10f Not null角色编号Username Varchar10Not null用户名Password Varchar10Not null密码Sex Varchar2Not null性别Address Varchar50住址Phone Varchar10电话选课成绩表(Score)字段名字段类型长度主/外键字段值约束对应中文名Scid int P Not null选课成绩编号id Varchar20F Not null用户名称Muid Int F Not null课程编号Itemid Varchar20F Not null学期编号Pacgrade Int平时成绩Endgrade Int期末成绩Syngrade Int综合成绩班别表(Classes)字段名字段类型长度主/外键字段值约束对应中文名Classesid varchar20P Notnull班别编号Classesname Varchar10Notnull班别名称Classescontext Varchar50Notnull班别描述系别表(Dept)字段名字段类型长度主/外键字段值约束对应中文名Deptid varchar20P Not null系别编号Deptname Varchar10Not null系别名称Deptphone Varchar10系电话Deptaddress Varchar20系地址学期时间表(Items)字段名字段类型长度主/外键字段值约束对应中文名Itemsid varchar20P Not null学期编号Itname Varchar10Not null学期名称Starttime Data10学期开始时间Endtime Data10学期结束时间Itstate Varchar10Not null学期状态课程表(Major)字段名字段类型长度主/外键字段值约束对应中文名MDid varchar20P Not null课程编号Mdname Varchar10Not null课程名称Mdcredit Varchar10Not null课程学分Mdstyle Varchar10Not null课程类型Mdstudytime varchar10课程学时课室表(Classroom)字段名字段类型长度主/外键字段值约束对应中文名Roomed varchar20P Not null课室编号Roomname Varchar10Not null课室名称Area Int Not null面积Maxnum Int Not null最大人数角色表(Userstyle)字段名字段类型长度主/外键字段值约束对应中文名Usersyleid varchar20P Not null角色编号Userstylename Varchar10Not null角色名称Permission Varchar10Not null权限教师授课表(Mdteacher)字段名字段类型长度主/外键字段值约束对应中文名Muid Int P Not null授课编号Id Varchar10F Not null用户编号Mdid Varchar10F Not null课程编号Mtime Datetime10Not null授课时间上课地点表(Majorroom)字段名字段类型长度主/外键字段值约束对应中文名Mrid varchar20P Not null上课地点编号Roomid Varchar10F Not null课室编号Mdid Varchar10F Not null课程编号5、源码/*==============================================================*/ /* 触发器:删除已存在表 *//*==============================================================*/ if exists (select * from sysobjects where id = object_id('Classes'))GOif exists (select * from sysobjects where id = object_id('Classroom')) drop table ClassroomGOif exists (select * from sysobjects where id = object_id('Dept'))drop table DeptGOif exists (select * from sysobjects where id = object_id('Items')) drop table ItemsGOif exists (select * from sysobjects where id = object_id('Major')) drop table MajorGOif exists (select * from sysobjects where id = object_id('Majorroom')) drop table MajorroomGOif exists (select * from sysobjects where id = object_id('Mdteacher')) drop table MdteacherGOif exists (select * from sysobjects where id = object_id('Score')) drop table ScoreGOif exists (select * from sysobjects where id = object_id('Sysuser')) drop table SysuserGOif exists (select * from sysobjects where id = object_id('Userstyle'))GO/*==============================================================*/ /* Table: Classes *//*==============================================================*/ create table Classes(classesid varchar(20) not null,deptid varchar(20),classname varchar(20) unique,clacontext varchar(50),primary key (classesid))go/*==============================================================*/ /* Table: Classroom *//*==============================================================*/ create table Classroom(roomid varchar(20) not null,roomname varchar(20) unique,area int check(area>0),maxnum int check(maxnum>0),primary key (roomid))go/*==============================================================*/ /* Table: Dept *//*==============================================================*/ create table Dept(deptid varchar(20) not null,deptname varchar(20) unique,depphone varchar(10) ,primary key (deptid))go/*==============================================================*/ /* Table: Items *//*==============================================================*/ create table Items(itemsid int not null IDENTITY,itname varchar(20),starttime datetime,endtime datetime,itstate varchar(10) check(itstate in (‘0’,’1’,’2’)),primary key (itemsid))go/*==============================================================*/ /* Table: Major *//*==============================================================*/ create table Major(MDid varchar(20) not null,MDname varchar(10) unique,MDcredit int ,MDstyle varchar(10) check(MDstyle in (‘公选课’,’选修课’)),MDstudytime int check(MDstudytime >0),primary key (MDid))go/*==============================================================*/ /* Table: Majorroom *//*==============================================================* create table Majorroom(MRid int not null IDENTITY,roomid varchar(20),MDid varchar(20),primary key (MRid))go/*==============================================================*/ /* Table: Mdteacher *//*==============================================================*/ create table Mdteacher(muid int not null IDENTITY,id varchar(20),MDid varchar(20),Mtime datetime,primary key (muid))go/*==============================================================*/ /* Table: Score *//*==============================================================*/ create table Score(scid int not null IDENTITY,id varchar(20),muid int,itemsid int,pacgrade int ,endgrade int,syngrade int,primary key (scid))go/*==============================================================*/ /* Table: Sysuser *//*==============================================================*/ create table Sysuser(id varchar(20) not null,classesid varchar(20),userstyleid varchar(10),username varchar(20) unique,password varchar(10),sex varchar(10) check(sex in (‘男’,’女’)),address varchar(50),phone varchar(20),primary key (id))go/*==============================================================*/ /* Table: Userstyle *//*==============================================================*/ create table Userstyle(userstyleid varchar(10) not null,userstylename varchar(20) unique,permission varchar(50),primary key (userstyleid))goalter table Classes add constraint FK_Reference_11 foreign key (deptid)references Dept (deptid) on delete cascade on update cascade;alter table Majorroom add constraint FK_Reference_15 foreign key (MDid)references Major (MDid) on delete cascade on update cascade;alter table Majorroom add constraint FK_Reference_18 foreign key (roomid)references Classroom (roomid) on delete cascade on update cascade;alter table Mdteacher add constraint FK_Reference_10 foreign key (id)references Sysuser (id) on delete cascade on update cascade;alter table Mdteacher add constraint FK_Reference_16 foreign key (MDid)references Major (MDid) on delete cascade on update cascade;alter table Score add constraint FK_Reference_13 foreign key (muid)references Mdteacher (muid);alter table Score add constraint FK_Reference_19 foreign key (itemsid)references Items (itemsid);alter table Score add constraint FK_Reference_4 foreign key (id)references Sysuser (id);alter table Sysuser add constraint FK_Reference_12 foreign key (userstyleid)references Userstyle (userstyleid) on delete cascade on update cascade;alter table Sysuser add constraint FK_Reference_14 foreign key (classesid)references Classes (classesid) on delete cascade on update cascade;/*==============================================================*//*存储过程:查询选修某个老师课程的学生 */ /*==============================================================*/ create procedure stu (@tr char(20))asselect Sysuser.id,ername from Sysuser,Score where Score.id=Sysuser.id and Score.muid in(select muid from Mdteacher,Sysuser where Mdteacher.id=Sysuser.id and ername=@tr);/*==============================================================*//*授权 *//*==============================================================*/grant select,update,insert,delete on Sysuser to stu2grant select,update,insert,delete on Score to stu2/*==============================================================*//*部分插入,更新和删除 */ /*==============================================================*/insert into Userstyle values('10054','老师','');insert into Userstyle values('10052','学生','');insert into Userstyle values('10051','管理员','');insert into Sysuser(id,userstyleid,username,password)values('11111','10051','小天','123');delete from Userstyle where userstyleid='10054';update Sysuser set password='234' where id='11111';6、小结和传统管理模式相比较,使用本系统,毫无疑问会大大提高老师评分的运作效率,辅助提高学校的管理水平,为降低拥挤,提高效益,减少差错,节省人力,减少多登陆的时间,提供有效的技术保障。