北京林业大学数据库结课报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

北京林业大学

2009学年— 2009 学年第一学期数据库

实习报告书

专业:地理信息系统班级:地信07

姓名:施敏燕学号: 0

实习地点:计算机B8机房辅导教师:田萱

实习内容:数据库教学网站建设

实习环境: SQLServer2000、Macromedia Dreameweaver8 实习步骤

一、系统需求分析

1.1.教学网站主要功能模块有如下。

◆电子教案

◆实验指导书

◆实习指导书

◆经典论文

◆教学软件

◆站内资料查询模块

◆登录模块:本模块设置有管理员登录和普通用户入口,用于分级管理。

教学网站系统分为两种身份登录:教师和学生。登陆时首先选择身份,然后通过输入用户账

号和密码进入相应的页面。不同身份登录实现不同的功能模块,主要是读写功能占很大区别。

a)教师空间的功能模块

系统用户的一种身份是管理员,即教师,能够进行资源的管理,页面分模块浏览和站内资源查

询功能。

b)学生空间的功能模块

系统用户的另一种身份是学生,即普通用户。学生登录网站主要是针对任课教师发布的资源

进行浏览、查询(下载)。

1.2数据流图

顶级数据流图

一级数据流图

二级数据流图

资源上传:

资源查询:

二、系统设计

2.1实现编译平台和运行平台介绍

VBScript是Visual Basic Script的简称,即 Visual Basic 脚本语言,是asp动态网页默认的编程语言,配合asp内建对象和ADO对象。目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序。用于调试简单的VB语句非常方便。其优点是:由于VBScript由网页浏览器解释执行,不需要增大服务器的负担。

数据库连接采用的是 ADODB 的方式,对于数据库的操作都用编程的方式实现。本系统在操作中运用了事务处理的方法,对于被意外终止的操作进行回滚操作,比如说用户在删除数据的时候在对数据库的更新过程中遇到障碍,数据会被恢复到没提交前的状态,保持了数据库的完整性。在编程的过程中采用了对数据库进行直接操作的形式,增加了程序的灵活性,比方对数据库进行更新和查询的程序采用建立数据库连接对象(Connection)和记录集(Recordset)并对其进行直接操作的方式。

2.2功能模块图:

2.3 数据库设计

E-R图

1)用户登录子模块:

2)用户----资源交互子模块:

2.3.2 数据库的逻辑设计

将E-R图转换为关系模式。

1

类型表:实现资源类别管理,有利于实现资源类型的添加、修改和删除。

3)Source(typeid,title,titleid,site,fsize,dateandtimes,downloadtimes,descriptions)

资源表:实现资源管理,有利于实现资源的添加、修改和删除。

(单下划线标注的属性为主码,双下划线加亮显示部分为外码)

生成关系模式图:

,形式如下:

Users(用户表)

type 表: Source 表:

users 表,type 表,source 表关系中的没一个属性都是不可再分的简单项,符合第一范式。 users 表,type 表,source 表的关系键均为单主属性,即不存在非主属性对主关系键的部分函数依赖,符合第二范式。

users 表,type 表,source 表中,每个非主属性都不传递函数依赖于个表的主关系键,符合第三范式。

在users 表中,仅存在一个候选键即为主键Sloginname ;source 表中,在允许重名的情况下,也只有titleid 可以作为候选码;type 表中,但由于是但主属性,也不存在主属性对将的部分函数依赖和传递函数依赖。

三、 技术方案 详细设计

1)登陆模块

Admin.asp (登陆模块) Sadmin.asp (在此登陆模块)

HTML 表单元素 b) 页面中所涉及到的数据库表信息

此页使用了users 表。 特别说明的是在教师登陆中,包含了三级检验,即用户名、密码和权限。

权限值由表中的typeid 赋予,若typeid 为空,则不具备权限。因此在数据库中必须要为管理员的typeid 赋值,即赋予了权限。 c) 页面代码分析 信息匹配部分代码:

If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then Session("MM_Username") = MM_valUsername If (MM_fldUserAuthorization <> "") Then

Session("MM_UserAuthorization") = CStr(MM_ Else

Session("MM_UserAuthorization") = ""

End If

if CStr(Request.QueryString("accessdenied")) <> "" And false Then

MM_redirectLoginSuccess = Request.QueryString("accessdenied")

End If

MM_rsUser.Close

Response.Redirect(MM_redirectLoginSuccess)

End If

MM_rsUser.Close

Response.Redirect(MM_redirectLoginFailed)

End If

首先判断用户名对象中包含记录,进行传值;判断其是否具有权限,若无,结束响应。最后匹配成功,跳转至管理员页面,否则,跳转至再次登陆页面。

2)信息分类显示

index.asp和adindex.asp

class.asp class1.asp class2.asp class3.asp class4.asp class5.asp

a)在这一系列信息显示分类模块中,采用了超链接方式,无需用户填写的HTML表

单元素。

b)页面中所涉及到的数据库表信息

信息显示分类模块中用到了type表和source表

利用了source表的typeid进行了信息的分类显示,且source表中的typeid必须与type表中的typeid相一致,由type表进行资源类型的统一管理。另外利用source表显示资源的详细信息。

c)页面代码分析

以class1.asp为例

利用select语句查询数据库的相关信息

SELECT titleid, title, , site, fsize, descriptions, dateandtime, editor, downloadtimes, type FROM dbo.source, dbo.type

WHERE and = 1

ORDER BY dateandtime DESC

在source表中查询typeid = 1的所有资源的详细信息,利用等值连接在type表中查询出type.typeid=source.typeid的资源的type属性字段。

3)资源查询

index.asp和adindex.asp

queryresult.asp

HTML表单元素

b)页面中所涉及到的数据库表

信息

在index.asp和adindex.asp页面上仅是数据的输入和接收,尚未涉及到数据库的操作。

在queryresult.asp页面中,连接数据库中的source表。这里的查询做的比较简单,是将输入的字段与source表中的descriptions字段做比较。查询出匹配信息。

c)页面代码分析

queryresult.asp页面:

相关文档
最新文档