好文档 - 专业文书写作范文服务资料分享网站

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

天下 分享 时间: 加入收藏 我要投稿 点赞

p[SLSST?ll;'£ ■L 口 eid T E 3LclmJt SIT Stu 1

trpeil ? T 4 S 3 电子教実 2 煙典论艾 宴口活导书 冥验指导书 Source 表:

Utls

5LV4

j 1 ,]| J

E' dJB -of the z £.

o£ du V4

0: k?Li

ETO3-6-T Z]-#;3- reirhig-r 2W9-^-T 31.43. EtOfl-B-T £]:?■■

岂宣P1;11

包卓口: pr 血at*

£3£(1' ptt

Ta

Teichrt

MM

I.

3XA3 Z1 d

1+ 0

血咗 jae (DU7 one OIL RTQ FM

Fifi.pc t

I

1 ] j

ve

0D£ iJu Vta E. J)E E. 1 \话 E: J)B >of tJu i/t Ji. J)B >ut Lha VA H:曲日槪* K*化 E iDB ?f iJw ¥A ■R' illB *f h \

T

B

tLa w

TB

w uw

■IJOEB 4HEz

”ELD9-G-7 21-*31 j:O=^-T 21.1::. LiUJ-G-? ^I W \2?3-

TH A rlw-r

r?iEh£r

.sax 吋 卫:dJG 話

WT£,H *

理-

睥二

?-T 21. IB.

:?ii^-fi-? 21 *=1 i

a

c c c

2 2

2 2

T*dw

Tetdiei-

312 血 EJOM-6-7 21.4SJ 込

ML-

=此 L-l

Tairhs*!: WF 21

翅』師

;-:F

o

a o

(]

■nr 2

Z

剥a七

1

FL T 21 n

\?h?

T* irh*T T? *dM-z' feirhjrr Tu4ii 和n

Q

n

D17 ilt X&\..

真习矚书

a

Z

E: J)B uf LLA V? E: 12533

S.JB

如 a i 2

Pin^JTkf Clw?i& Ciiteiurit 5

4

1

齡悔JCT

论吨

ttE

o u

Q[ VlH 4f Ow vt F:』B -

ML 砂 peQDQ 聲Hit

心£ IM g ?E: J)Q o£ Jn XT!

VB

5T653 MlQWl

r-rni iniR ci

sq迅c£mQ i

创:他:

* 235关系模式的规范化

users表,type表‘source表关系中的没一个属性都是不可再分的简单项,符合第一范式。

users表,type表,source表的关系键均为单主属性,即不存在非主属性对主关系键的部分函数 依赖,符合第二

范式。

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

在users表中,仅存在一个候选键即为主键

Sloginname; source表中,在允许重名的情况下,

也只有titleid可以作为候选码;type表中,但由于是但主属性,也不存在主属性对将的部分 函数依赖和传递函数依赖。

详细设计

1)登陆模块

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

a) 在Admin.asp页面和Sadmin.asp页面中,管理员用户需要填写的

名称 用户名 密码 表单兀素类型 含义 管理员登陆名 管理员密码 取大长度 HTML表单元素

text password 20 b)

20 页面中所涉及到的数据库表信息 此页使用了 users 表。

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

typeid 赋予, 若 typeid 为空, 则不具备权限。 因此在数据库中必须要为管理员的 typeid 赋值, 即赋予了

权限。

c) 页面代码分析

信息匹配部分代码:

If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then Session(\=

MM_valUsername

If (MM_fldUserAuthorization <> \Session(\

CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization).Value)

Else Session(\End If

if CStr(Request.QueryString(\MM_redirectLoginSuccess = Request.QueryString(\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)

lYl 匸

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

单元素。

b) 页面中所涉及到的数据库表信息 信息显示分类模块中用到了 type 表和 source 表

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

c)

页面代码分析 以 class1.asp 为例

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

SELECT titleid, title, dbo.source.typeid, site, fsize, descriptions, dateandtime, editor, dow nl oadtimes, type FROM dbo.source, dbo.type

WHERE dbo.source.typeid=dbo.type.typeid and dbo.source.typeid = 1 ORDER BY datea ndtime DESC

在source表中查询typeid = 1的所有资源的详细信息,禾U用等值连接在

type表中查询出

type.typeid=source.typeid 的资源的 type 属性字段。 3)资源查询

index.asp 禾口 adindex.asp queryresult.asp

a)在教师首页和学生首页上,分别都有资源查询模块,用户需要填写的 名称 表单兀素类型 含义 要查询的相关内容 最大长度 HTML表单元素

n ames text b)

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

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

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

source表中的descriptions字段做比较。查询出匹配信息。 c)

页面代码分析

queryresult.asp 页面:

首先进行传值,将上一个页面中的表单所接受到的信息赋给变量

n ames,

n ames= Request.Form(” names\

利用数据源的方式连接数据库:

Set conn = Server.CreateObject(\conn. Open \,”SQL2000\

创建记录集:

set RS=Server.createobject(\

在source表的descriptions字段进行匹配查询,并保存在记录集内:

sql = \rs.ope n sql,c onn

最后输出相应资源的属性信息。

4) 资源添加 freeadd.asp adm in save.asp add new.asp

freeadd.asp为添加资源的表单,adminsave.asp对freeadd.asp的表单信息进行检查和显示, add new.asp将记录最后加入数据库中。 a)

Freeadd.asp资源添加页面中,用户需要填写的

HTML表单元素

名称 表单兀素类型 下拉菜单 下拉菜单 含义 取大长度 types typeid title titleid site editor fsize 资源类型 类型ID 资源标题 资源编号 下载地址 作者 资源大小 Text Text Text Text Text 100 100 100 100 100 100 资源简介 descriptio ns Text b)页面中所涉及到的数据库表信息 在Freeadd.asp页面上仅是数据的输入,尚未涉及到数据库的操作。

在adminsave.aspp页面中,连接数据库中的 source表。Source表中的主码为titleid,需要检验 写入的编号是否重复,否则无法写入数据库中。

在addnew.asp页面中,将新增资源写入数据库中。

c) 页面代码分析 Freeadd.asp 页面

关于下拉菜单的设计

其中资源类型没有传值作用,仅起修饰作用; 以类型编码的下拉菜单为例,

以下即为设计出的下拉菜单,5个选项依次所传递的值为

1、2、

3、4、5,即传递给 source表中typeid的值。 vselect n ame=\

(1 )电子教案v/option> (2) 实验指导书v/option> (3) 实习指导书v/option> (4 )教学软件v/option> (5 )经典论文v/option>

voptio n value=\Adm in save.asp 页面中

1、将前一页面即 Freeadd.asp页面中表单提交的值均赋为全局变量传值,如 session(\其他同理。 2、此页面还需判断前文字框中输入的内容非空:

定义变量,利用founerr赋值的变化连续判断各文字框是否为空。

typeid:

Dim foun err=false 以判断title为例,其余同理: if trim(request.form(\

foun derr=true

errmsg=errmsg+\资源名称不能为空 v/li>\end if 若某个文字框为空,则变量 founerrr=true, 此时: if founderr=true then

response.write \由于以下的原因不能保存数据: \

response.end

end if 输出错误原因后结束响应,需用户重新填写。

3、判断数据库中 titleid 是否已存在,避免记录无法写入数据库的情况。 连接数据库,创建记录集 dim conn

set conn=server.createobject(\set rs=server.createobject(\

利用 select 语句查询 titleid, 其值现保存在全局变量 session(\中, sql=\

where titleid = '\判断重复则结束响应: if not rs.eof then response.write\已使用过的资源编号,请重新输入资源编号。 set rs=nothing

conn.close

set conn=nothing response.end end if 全部正确则显示编辑信息等待用户确认。否则返回重新编辑。

\

add new.asp 页面

连接数据库,将全句变量对应写入 source 表的相关字段: 其中 dateandtime 自动返回为系统时间。

rs(\

四. 结果

1. 实习程序的使用说明书

设置数据源名称为 DB,用户名:sa密码:SQL2000

一、登陆界面:有老师和学生两种模式,教师登陆用户名:

统自动判别获取。学生用户直接由学生入口进入即可。

Teacher密码:Teacher,权限由系

1by3g73ode0zdc523xwm17c19373fh00gpj
领取福利

微信扫码领取福利

微信扫码分享