教务管理系统数据库设计报告

软件数据库设计

一、引言

编写目的

    编写本数据库的目的在于有利于后期的维护,其主要读者为后期的系统维护人员。

以便于他们在维护时方便地掌握原数据库环境。

背景

a.待开发的数据库名称为:Student.mdb。使用该数据库的系统为:教务管理。

b.本项目是由计算机科学与技术学院08计11班郭琼、王娟、何婷婷、李姣、金欢欢、褚强、孙超为了进行软件测试实训而进行开发的

定义

本数据库所用术语为:数据库,表,记录,字段

其中数据库名称和表名为英文词组。数据库名:Student.mdb

    表名:如Xs、Js等,表名清晰明了,有利于阅读。

4  参考资料

《中文office 2000》,《VB数据库开发》等。

二、外部设计

标识和状态

本系统仅包含一个数据库,所以数据库的唯一标志也是数据库的名字即Student.mdb

该数据库所包含的所有表也都以其表名为唯一标志,而不在存在其他表示方式。

使用它的程序

对应系统表单、控件、过程的各个程序和模块,诸如查询,修改,添加,调整等。

约定

程序员在利用或修改该数据库时需要注意的是在各个表中,关键字段为表中的学号,教师号,班号,以及用户帐号,程序员在利用数据库时应当优先考虑这些字段的唯一性和完整性。

支持软件

该数据库所用的DBMS为SQL server。该数据库管理系统具有操作简便,维护容易的特点,对中小型数据库的管理非常适用。

三、结构设计

    1、学生模式设计:

   根据关系模型的转换原则,上面的E—R图可转换为如下所示的关系模型:

Bj(Bno,Bname,Bdate,Btea,Bmon,Bparty)

各项含义分别为:班级(班号,班名,建班时间,班主任,班长,团支书)

其中班号是班级表的是主码

Xs(Xno,Bno,Xname,Xbir,Xaddr,Xnation,Xface,Xid,Xcall,Xsno,Xmail,Xdate)

其中各项含义分别为:(学号,班号,学生姓名,性别,出生日期,籍贯,

民族,政治面貌,身份证号,联系方式,宿舍号,邮箱,入学日期 )

其中学号是学生表的主码,班号是学生表的外码 

A、数据结构:

         班级

         含义说明:描述了组成班级的信息结构

         组成:班号,班名,建班时间,班主任,班长,团支书

         学生

         含义说明:描述了组成学生的信息结构

         组成:学号,班号,学生姓名,性别,出生日期,籍贯,民族,政

               治面貌,身份  证号,联系方式,宿舍号,邮箱,入学日期

B、数据表

     根据上面的E-R图设计及关系模型的设计,得出数据表的设计,在本系统

  中主要的数据表如下:

                      表1:班级基本信息表(Bj)

         表2:学生基本信息表(Xs)

2、教师模式

   根据关系模型的转换原则,上面的E—R图可转换为如下所示的关系模型

Kc(Kno,Kname,Jno,Kpno,Kpname,Khour,Kciredit)

其中各项含义分别为:课程(课程号,课程名,教师编号,先修课程号,先

修课程名,学时,学分)

其中课程号是课程表的主码

Cj(Cid,Bno,Xno,Kno,Cscore)

其中各项含义分别为:成绩(成绩id ,班号,学号,课程号,成绩)

其中成绩id是成绩表的主码,班号、学号、课程号是成绩表的外码

A、数据结构

        课程表

        含义说明:定义一个描述学生所选的课程的信息

    组成:课程号,课程名,教师编号,先修课程号,先

              修课程名,学时,学分

    成绩表

        含义说明:定义一个描述学生所选的课程的成绩

        组成:成绩id ,学号,课程号,成绩

B、数据表

根据上面的E-R图设计及关系模型的设计,得出数据表的设计,在本系统中主要的数据表如下:

表3  课程信息表(Kc)

                            表4    成绩信息表(CJ)

四、安全保密设计

由于本系统要求的保密等级不高,故只在数据库中建立一张用户表,并分别设置超级用户,普通用户标志,在程序中根据用户标志来分别赋予不同权限。

 

第二篇:教务管理系统数据库设计报告

             教务管理系统

    

一、主页登录  default.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Trim(request.form("username"))<>"" AND Trim(request.form("pswd"))<>"" Then

   Dim db

   Set db=Server.CreateObject("ADODB.Connection")

   db.Open "jiaowu"

   Dim userid,pswd,strsql,rs

   userid=Request.Form("username")

   pswd=Request.Form("pswd")

End If

If request.form("D1")="学生"  Then

   strsql="Select * From stu Where sno='"&userid&"'"

   Set rs=db.Execute(strsql)

 If pswd=rs("spin") Then

   Session("stuid")=userid

   Response.Redirect"student.asp"

 Else

   Response.write"密码错误"

 End If

ElseIf request.form("D1")="教师" Then

   strsql="Select * From tea Where tno='"&userid&"'"

   Set rs=db.Execute(strsql)

 If pswd=rs("tpin")   Then

   Session("teaid")=userid

   Response.Redirect"teacher.asp"

 Else

   Response.write"密码错误"

 End If

ElseIf request.form("D1")="教务管理员" Then

   strsql="Select * From adm Where adm='"&userid&"'"

   Set rs=db.Execute(strsql)

 If pswd=rs("apin")   Then

   Session("admid")=userid

   Response.Redirect"adm.asp"

 Else

   Response.write"密码错误"

 End If

Else

   Session("stuid")=""

   Session("teaid")=""

   Session("admid")=""

End If 

%> 

二、 学生用户界面

(一)实现选课    student.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("stuid")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

Else

Dim stuid,cnoid

stuid=Session("stuid")

cnoid=Request.form("T1")

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="Insert Into score(cno,sno) Values('"&cnoid&"','"&stuid&"')"

Set rs=db.Execute(strsql)

End If

db.close

Set db=Nothing

%>

(二)显示课表   cou_list.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("stuid")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="Select Distinct cou.cno,cou.cname,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.MoveNext

           Loop

         %>     

       </table>

</div>

(三)成绩查询  mark.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("stuid")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim rs,strsql

strsql="Select * From score Where sno='"&Session("stuid")&"'"

Set rs=db.Execute(strsql)

End if

%>

              <tr>

                  <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.MoveNext

         Loop

        %>

   三、 教师用户界面  实现成绩录入功能        teacher.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("teaid")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

ElseIf Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>"" Then

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,cno,sno,mark

cno=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")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

End If

%>

(一)课程信息维护

1、显示课程信息    adm_cou.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("admid")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="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.MoveNext

               Loop

         %>     

              </table>

       </form>

2、修改课程信息  update_cou.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("admid")="" Then

Response.write"请先登录"

Response.Redirect "default.asp"

Else

Dim cno

cno=Request.QueryString("cno")

Session("cno")=cno

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="Select * From cou Where cno='"&cno&"'"

Set rs=db.Execute(strsql)

End If

%>

3、修改课程的执行程序  update3.asp

<% Option Explicit %>

<%

Dim cnoid

cnoid=Session("cno")

If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>""  And Request.Form("T5")<>"" Then

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim cno,cname,tno,stime,room,strsql

cno=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")="" Then

Response.write"请先登录"

Response.Redirect "default.asp"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,cno

cno=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")="" Then

   Response.Redirect "default.asp"

   End If

If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>"" And Request.Form("T5")<>"" Then

  Dim db

  Set db=Server.CreateObject("ADODB.Connection")

  db.Open "jiaowu"

  Dim strsql,cno,cname,tno,stime,room

   cno=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")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="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.MoveNext

         Loop

         %>

                            </table>

                     </form>

2、修改教师信息  update_tea

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("admid")="" Then

Response.write"请先登录"

Response.Redirect "default.asp"

Else

Dim tno

tno=Request.QueryString("tno")

Session("tno")=tno

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="Select * From tea Where tno='"&tno&"'"

Set rs=db.Execute(strsql)

End If

%>

3、修改教师信息的执行程序  update2.asp

<% Option Explicit %>

<%

Dim tnoid

tnoid=Session("tno")

If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>"" Then

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim tno,tname,ttel,strsql

tno=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"

Else

Response.Write"请将所有信息填写完整"

Response.Write"<a href='adm_tea.asp'>重新修改</a>"

End If

%>

4、删除教师信息的执行程序    dele_tea.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("admid")="" Then

Response.write"请先登录"

Response.Redirect "default.asp"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,tno

tno=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")="" Then

  Response.Redirect "default.asp"

  Response.write"请先登录"

End If

If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>"" Then

  Dim db

  Set db=Server.CreateObject("ADODB.Connection")

  db.Open "jiaowu"

 Dim strsql,tno,tname,ttel

    tno=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")="" Then

Response.Redirect "default.asp"

Response.write"请先登录"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="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.MoveNext

         Loop

         %>

                     </table>

                                   </form>

2、修改学生信息  update_stu.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("admid")="" Then

Response.write"请先登录"

Response.Redirect "default.asp"

Else

Dim sno

sno=Request.QueryString("sno")

Session("sno")=sno

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,rs

strsql="Select * From stu Where sno='"&sno&"'"

Set rs=db.Execute(strsql)

End If

%>

3、修改学生信息的执行程序  update1.asp

<% Option Explicit %>

<%

Dim snoid

snoid=Session("sno")

If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>"" And Request.Form("T4")<>"" Then

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim sno,sname,ssex,sclass,strsql

sno=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&"'Where sno='"&snoid&"'"

db.Execute(strsql)

Response.Redirect"adm_stu.asp"

Else

Response.Write"请将所有信息填写完整"

Response.Write"<a href='adm_stu.asp'>重新修改</a>"

End If

%>

4、删除学生信息的执行程序    dele_stu.asp

<% Option Explicit %>

<% Response.Buffer=True %>

<%

If Session("admid")="" Then

Response.write"请先登录"

Response.Redirect "default.asp"

Else

Dim db

Set db=Server.CreateObject("ADODB.Connection")

db.Open "jiaowu"

Dim strsql,sno

sno=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")="" Then

  Response.Redirect "default.asp"

End If

If Request.Form("T1")<>"" And Request.Form("T2")<>"" And Request.Form("T3")<>"" And Request.Form("T4")<>"" Then

  Dim db

  Set db=Server.CreateObject("ADODB.Connection")

  db.Open "jiaowu"

 Dim strsql,sno,sname,ssex,sclass

   sno=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、表名称:qu        表类型:约束表       含义:功能区

2、表名称:jiemian       表类型:约束表       含义:主页登陆界面

3、表名称:jiemian        表类型:约束表       含义:学生用户界面

4、表名称:jiemian        表类型:约束表       含义:教师用户界面

5、表名称:jiemian        表类型:约束表       含义:教务管理员登录界面

6、表名称:qu       表类型:实体表       含义:主页登录区

7、表名称:qu        表类型:实体表       含义:学生用户界面区

8、表名称:jiemian       表类型:实体表       含义:教务管理员登录界面

说明部分:

1、   由于在该教务管理系统中加入了较为复杂的 XML 代码,所以在这里只给出了主要的与系统功能相关的 ASP文件中的VBScript代码。

2、   本系统的数据库名为 jiaowu.mdb 内有五张表:stu, tea, cou, score, adm ,教务管理员对学生、教师信息进行添加时,系统分别根据学生学号、教师编号自动生成密码,米纳生成函数表达式为:spin=sno,tpin=tno

3、   整个管理系统都运用了增、删、改、查的原理。

相关推荐