利用ASP在线维护数据库

王朝asp·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

随着因特网的发展,在网络环境中,数据库应用渐渐向操作简单、功能实用的方向发展。本文介绍如何利用ASP技术实现对

数据库进行在线维护的方法,并给出了各种功能键的实现过程。

实现功能

数据库管理员可在网上直接维护数据库。在数据查询与数据库维护界面中(见图1),通过复选框选取所要操作的数据行,

并在功能键区通过单选按钮选取所要进行的操作,然后按“提交”按钮,即可进行所需操作,并得到返回信息(见图2)

图1 数据查询与数据库维护界面

图2 返回信息提示界面

实现环境如下:

客户端:Windows 98 操作系统+IE 5.0浏览器

服务器端:SQL Server 7.0数据库

网站应用程序开发环境:Active Server Pages (ASP)

网页制作开发环境:Microsoft FrontPage 2000

编程实现

首先,用FrontPage 2000编制数据查询与数据库维护界面,通过与后台SQL Server数据库standard建立关联,从数据

库表中查取数据,生成数据集合rs。为加快程序访问速度,可以将其保存在session对象rs1中。部分代码如下:

<%

sql=“select * from inform order by pdate DESC”

Set rs=Server.CreateObject(“ADODB.Recordset”)

rs.Open sql,“Driver={SQL Server};Server=

(local);Database=info;UID=user;PWD=password;”,3,2

set session(“rs1”)=rs

%>

插入一个Form,添加“插入”、“删除”、“修改”等功能键,并将功能键处的单选按钮的组名称设为edit,按钮值分

别对应为“insert”、“delete”、“update”。

然后,编写ASP程序tzwh1.asp 文件。从session 中读取数据,根据数据项用split函数将其分开,转化为一个数组进

行处理,并用trim函数去掉数据前后空格。程序部分代码如下:

<% set rs=session(“rs1”)

edit=trim(Request(“edit”))

id=“, ”&trim(Request(“id”))&“, ”

eno=split(trim(Request(“NO”)), “, ”)

etitle=split(trim(Request(“title”)), “, ”)

epdate=split(trim(Request(“pdate”)), “, ”)

ewriter=split(trim(Request(“writer”)), “, ”)

econtent=split(trim(Request(“content”)) , “, ”)

%>

最后,实现功能键。功能键的选择用case 语句实现。每一个实现过程中,利用inStr比较函数将读出来的eno与数据项

的标识号id相比较,可识别出所选的复选框是否有效。for循环体的下界采用Ubound函数,避免了网页数据的提取错误。部

分程序代码如下:

||||||<% select case edit

case “insert”

for i=0 to Ubound(eno)

if inStr(id,“, ”&trim(eno(i))&“,”)>0 then

rs.AddNew

rs(“title”)=trim(etitle(i))

rs(“pdate”)=trim(epdate(i))

rs(“writer”)=trim(ewriter(i))

rs(“content”)=trim(econtent(i))

rs.Update

%>

<tr>

<td align=“center”><% =rs(“pdate”)

%>.</td>

<td><font color=“#008080”><% =rs(“title”) %>.</font></td>

<td><font color=“#008080”>插入新记录成功!</font></td>

</tr>

<% End if

Next%>

<% case “delete”

for i=0 to 9

if inStr(id,“, ”&trim(rs(“id”))&“,” )>0 then%>

<tr>

<td align=“center”><% =rs(“pdate”)

%>.</td>

<td><% =rs(“title”) %>.</td>

<td><font color=“#FF0000”>记录删除成功!</font></td>

</tr>

<%

rs.delete 1

End if

rs.movenext

if rs.eof then Exit for End if

Next

case “update”

for i=0 to 9

if inStr(id,“,”&trim(rs(“id”))&“,”)>0 then

rs(“title”)=trim(etitle(i))

rs(“pdate”)= trim(epdate(i))

rs(“writer”)= trim(ewriter(i))

rs(“content”)= trim(econtent(i))

rs.Update %>

<tr>

<td align=“center”><% =rs(“pdate”)

%>.</td>

<td><% =rs(“title”) %>.</td>

<td><font color=“#0000FF”>记录修改成功!</font></td>

</tr>

<% End if

rs.movenext

if rs.eof then Exit for End if

Next

end select

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航