如何对Oracle8数据库进行维护?
来源:asp之家 发布时间:2009-11-20 18:01:00
我在Web服务器端安装了Web Server IIS4.0、Oracle Net8 for Client,并创建好了和Oracle8数据库的ODBC接口。该如何编写ASP代码对它进行增加、删除、修改、保存和查询等维护工作?
首先,要在Oracle服务器上安装Oracle8数据库,(一般操作系统为UNIX),在Web服务器Windows NT的控制面版中正确配置ODBC。
假设我们的Oracle用户为user—name,密码为user—passwd,编码库表为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=' "&mc&" ' ")
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 & " ' where 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()
%>
猜你喜欢
- 这个javascript农历日历,万年历代码网上看到的,很不错,功能齐全,值得收藏!功能介绍:动态显示当前世界各国各时区时间,显示当前农历,
- 篇首语:原来改mdb为asp就能防下载是鬼话。 引子:昨天和animator试验了一下,把data.mdb文件改名为data.as
- 今天在论坛上面看到有些兄弟不知道HTC是什么东西。小生在这里稍微说一下。从5.5版本开始,Internet Explorer(IE)开始支持
- 小毅的blog:http://andymao.com/前天网上有个朋友发给我一个页面让我帮她看一下为什么鼠标翻转实现不了。我打开源文件看了一
- 很多人都有研究闭合浮动元素的问题,但是解决方法却不一样,也并不是每一种方法都尽善尽美。闭合浮动元素(或者叫清除浮动)是web标准设计中经常会
- 小小程序猿SQL Server认知的成长 1.没毕业或工作没多久,只知道有数据库、SQL这么个东东,浑然分不清SQL和Sql Server
- javascript 常见汉字转换成拼音,上下行排列,方便对比,速度快,你可以把代码复制到本地,作为一个不错的汉字转换拼音的工具!转换效果图
- 1.SYS用户具有DBA权限,并且拥有SYS模式,只能通过SYSDBA登陆数据库。是Oracle数据库中权限最高的帐号SYSTEM具有DBA
- 平时制作页面中可对属性list-style在list-item对象中常用,但用的都不深。一般都设为none重置整个页面就差不多OK,可能很多
- 在用wordpress这个博客的时候,我很奇怪的发现,最近写的内容排在第一页,而最早写的成了最后页。这显然有悖逻辑,正常的情况应该是最早写的
- 对url进行编码在服务器端我们可以使用asp中的server.urlencode,很方便实现。如:<% ss="asp之家欢
- 随着互联网的飞速发展,很多主页都是越做越漂亮、越来越有个性。如果你是一个资深的网虫不会没有自己的主页吧!下面小弟就来谈谈如何使你的网上“小窝
- CSS浮动一直是个比较让人郁闷的问题,很多的布局问题都出在浮动上,特别是当浮动的列数很多时,但其实只要理解了两列结构的浮动,面对多列数的浮动
- 是什么能让一个设计看上去是协调的,有条理的,专业的?答案是”色彩”.不是所有的项目都要用那种浅的”公司蓝”(corporate blue)才
- asp之家注:对于ACCESS数据库中的NULL,经常我们直接判断该字段是否为空用的是:name="",但是这个还不够,
- use mysql; u
- 说明:本文内容都是从Google上搜索来的,本想上http://www.alexa.com/查官方数据,访问非常慢暂且没查。使用本接口将返回
- Object 类型的对象虽然有 toString 方法,但结果却是 [Object Object] 让人没法理解的字符。比如简单的对象:{n
- 虽然现在有许多网页制作工具能让您轻松地完成工作,但如果使用HTML则可以得到更大控制权,下面介绍几个小技巧。1.使用语句来控制文字排版比用好
- aspjpeg组件实现加水印函数的调用方法: <%printwater "/images/水印图片.gif",&q