您的位置:首页精文荟萃软件资讯 → ASP编写数据库维护程序

ASP编写数据库维护程序

时间:2004/10/7 19:05:00来源:本站整理作者:蓝点我要评论(0)


            
             
              
             
            

               
               

            



            ASP(Active Server Pages)是Microsoft公司动态访问网络数据库
的最新技术,目前在Web开发中得到越来越广泛的应用。ASP编程非常灵
活,本文通过开发一个数据库维护程序,讲述一下ASP的编程方法。
  开发运行环境
  Oracle服务器:操作系统为UNIX,安装了Oracle8数据库。
  Web服务器:奔腾586,操作系统为NT4.0,在其上安装了Web Server
IIS4.0、Oracle Net8 for Client,并创建好了和Oracle8数据库的OD
BC接口。
  客户机:Win 95/98操作系统,普通浏览器(Netscape4、IE4或以
上版本),并安装开发工具Frontpage 98。
  系统总体网络协议为TCP/IP。
  Web服务器上ODBC的配置
  首先在Web服务器Windows NT上安装访问数据库的ODBC驱动程序,
利用ODBC检测工具软件测试与数据库是否连通(运行Oracle ODBC TEST
)。连通后,在NT的控制面版中ODBC的正确配置举例如下:microsoft
odbc for oracle安装 数据源名称(即odbc的名字) infosystem 描
述(d) 信息 oracle用户名称(u) user—name oracle用户密码 use
r—passwd 服务器(s) ora8
  编写源代码
  数据库的维护包括增加、删除、修改、保存和查询操作。下边这段
程序是对Oracle用户为user—name(密码为user—passwd)中的表tab
—code(编码库)进行维护,tab—code有两个字段,即bm(编码字段,
字符型,5位)和mc(名称字段,字符型,20位)。
  1.与数据库连接,定义子例程:
  <%'赋初值%>
  <% mc=Request("mc") %>
  <%'连接源数据库%>
  <%
  Set Conn=Server.CreateObject("ADODB.Connection")
  Conn.Open "infosystem","user—name","user—passwd"
  '参数的含义见上表
  set bmrs = Conn.Execute("SELECT bm FROM bmb where mc=' "&m
c&" ' ")
  temp1 = bmrs("bm")
  sql—1 = request("sql—1")
  if sql—1 = " " then
  sql—1="SELECT bm,mc FROM table—code WHERE bm like ' " &
temp1 & "%' order by bm"
  end if
  Call treat()
  %>
  <%
  Sub Reset()
  bm = " "
  temp2 = " "
  End Sub
  %>
  <%
  Call Reset()
  num—recn = Conn.Execute("SELECT Max(bm) FROM table—code
WHERE bm like ' " & temp1 & "%' ")
  %>
  <%
  Sub treat()
  Set num—recn = Conn.Execute(sql—1)
  if num—recn.eof then
  else
  sum—recn = 0
  Do While Not num—recn.EOF
  num—recn.MoveNext
  sum—recn = sum—recn+1
  Loop
  if sum—recn <> 0 then
  sele—recn=sum—recn
  num—recn.MoveFirst
  num—recn.Move(sum—recn-1)
  Call extract()
  end if
  end if
  End Sub
  %>
  <%
  Sub extract()
  bm = num—recn("bm")
  temp2 = num—recn(1)
  num—recn.Close
  End Sub
  %>
  2.增加一条记录:
  <%
  sum—recn =sum—recn + 1
  bm = Request("bm")
  temp2 = Request("temp2")
  Insertsql = "INSERT INTO table—code(bm,mc) VALUES (' " &
bm & " ',' " & temp2 & " ')"
  Set Insertrs = Conn.Execute(Insertsql)
  %>
  3.删除当前记录:
  <%bm = Request("bm")
  set delrs = Conn.Execute("Delete From table—code where bm
=' " & bm &" ' ")
  Call treat()
  %>
  4.更新当前记录后入库(提交更新过的记录):
  <%
  bm = Request("bm")
  temp2 = Request("temp2")
  UpdateSQL = "UPDATE table—code SET mc=' " & temp2 & " ' w
here bm=' " & bm &" ' "
  Set UpdateRS=Conn.Execute(UpdateSQL)
  %>
  5.设置查询条件(内容),输出查询结果:
  <%
  Call Reset()
  temp2 = Request("temp2")
  sql—1="SELECT bm,mc FROM table—code WHERE mc like ' " &
temp2 & "%' order by bm"
  call treat()
  %>
  '到第一条记录
  <%
  Set num—recn = Conn.Execute(sql—1)
  sum—recn = Request("sum—recn")
  sele—recn=1
  Call extract()
  %>
  <%
  '查找前一条记录
  Set num—recn = Conn.Execute(sql—1)
  sele—recn = Request("sele—recn")
  sum—recn = Request("sum—recn")
  if sele—recn >1 then
  sele—recn = sele—recn-1
  num—recn.Move(sele—recn-1)
  end if
  Call extract()
  %>
  <%
  '查找下一条记录
  Set num—recn = Conn.Execute(sql—1)
  sele—recn = Request("sele—recn")
  sum—recn = Request("sum—recn")
  if CInt(sele—recn) < CInt(sum—recn) then
  sele—recn=sele—recn+1
  num—recn.Move(sele—recn-1)
  else
  num—recn.MoveFirst
  num—recn.Move(sum—recn-1)
  end if
  Call extract()
  %>
  <%
  '到最后一条记录
  Call treat()
  %>
  开发过程中遇到的问题及解决方法
  1.用Frontpage98配合ASP技术的开发模式,虽然不是很标准,但是
编程效率高,而且简单易行。而用Studio6.0中的INTER DEV进行编程,
应该是最标准的,但其编程复杂,维护难度大。
  为了提高效率和保持代码的正确性,我们可用记事本打开ASP程序
,将部分代码输入或粘贴上去,从而避免程序代码的丢失或篡改。
  2.有时ASP程序访问数据库时,如果遇到网络瓶颈等因素,速度会
变慢,此时往往会返回“运行超时”的错误,解决此问题的方法是,将
延时时间设得足够大,如:
  <%server.scripttimeout=10000%>

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 360快剪辑怎么使用 36金山词霸如何屏幕取词百度收购PPS已敲定!3

最新文章 微信3.6.0测试版更新了微信支付漏洞会造成哪 360快剪辑怎么使用 360快剪辑软件使用方法介酷骑单车是什么 酷骑单车有什么用Apple pay与支付宝有什么区别 Apple pay与贝贝特卖是正品吗 贝贝特卖网可靠吗

人气排行 xp系统停止服务怎么办?xp系统升级win7系统方电脑闹钟怎么设置 win7电脑闹钟怎么设置office2013安装教程图解:手把手教你安装与qq影音闪退怎么办 QQ影音闪退解决方法VeryCD镜像网站逐个数,电驴资料库全集同步推是什么?同步推使用方法介绍QQ2012什么时候出 最新版下载EDiary——一款好用的电子日记本