|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时.object|oracle|会见ASP(ActiveServerPages)是微软公司为开辟互联收集使用程序所提出的工具之一,它是一品种似HTML(Hypertext
MarkupLanguage超文本标志言语)、Script与CGI(CommonGatewayInterface通用网关接口)的分离体,可是其运转效力却
比CGI更高、程序体例也比HTML更便利且更有天真性,程序平安性及保密性远比Script好。因而ASP是今朝网页开辟手艺中
最简单进修、天真性最年夜的开辟工具。
ASP内置的ADO组件是微软公司开辟的互联收集数据库存取办理计划,也是ASP存取数据库的主要元勋,ADO经由过程ODBC会见数
据库,从实际上讲ADO能会见各类ODBC所撑持的数据库,如MicrosoftSQLServer,Access,Foxpro,Oracle,Dbase等,
但是在理论中我们发明ADO能够完整撑持MicrosoftSQLServer和Acess,但是关于Oracle就有些坚苦了,笔者在理论中利
用ADO会见Oracle8,了局发明ADO不克不及会见Oracle8的数字型字段,而且发明ADO会见Oracle8的速率极慢。
为懂得决使用ASP会见Oracle8的速率及其他手艺成绩,笔者实验了使用OracleObjectforOLE会见Oracle8,了局完整取
得了笔者预期的了局。
OracleObjectforOLE是Oracle公司为了客户端存取数据库所开展的一个主要的产物,它以Windows95/98/NT为基本,共
一切与OLE兼容的使用程序会见Oracle数据库。它是没有效户界面的OLEServer,其所包括的OracleObjectsServer是ASP
会见Oracle数据库的主要元勋之一。
要经由过程OracleObjectsServer来会见Oracle8数据库,除基础的Web服务器与ASP等软件外,还必需断定Web服务器已安
装了OracleObjectforOLE软件,其所需的软件包含:NetworkProtocolAdapter、OracleObjectforOLE2.X、
SQL*NetClient2.X或OracleNet8Client8.X、SQL*Plus及Oracle8ODBCDriver。在断定Web服务器已安装上述软件后,
还必需使用SQL*NetClient2.X或OracleNet8Client8.X举行数据库的毗连测试并设置数据库别号(DatabaseAlias)。
OracleObjectsServer共供应Oraclient、Orasession、Oraconnection、OraDatabase、OraDynaset、OraSQLstmt、
OraField、Oraparameter、OraparameterArray等九个工具供开辟者利用。其功效与感化分述以下:
1.Oraclient工具
Oraclient工具是用来界说服务器端(Client或Workstation)的局限,Oraclient会纪录此服务器真个一切Orasession工具。
Oraclient由体系依据必要主动创建。
2.Orasession工具
Orasession工具用来在程序中办理Oraconnection、OraDatabase、OraDynaset等工具,其创建办法以下:
SetOrasession=Create(“OracleInProcServer.Xorasession”)
3.Oraconnection工具
Oraconnection工具暗示对OraDatabase工具的毗连,当必要创建OraDatabase工具时,体系会主动发生一个Oraconnection
工具。反之,当与数据库断开毗连时,Oraconnection工具主动开释。
4.OraDatabase工具
OraDatabase工具暗示对数据库服务器的假造登录,其登录办法以下:
SetOradadabase=Orasession.Dbopendatabase_
(“数据库别号”,“用户称号/暗码”,0)
5.OraDynaset工具
OraDynaset工具会将数据库服务器切合SELECT命令的数据加以存储在客户真个缓冲区,让用户扫瞄或更新,最初将了局写
回到服务器,其办法以下:
SetOraDynaset=OraDatabase.DbcreateDynaset(“SQL语句”,0)
6.OraSQLstmt工具
OraSQLstmt工具一般用来运转SQL命令、或是挪用存储历程,其用法以下:
SetOrasqlstmt=Oradatabase.createSQl(“SQL语句”,0)
7.OraField工具
OraField工具暗示在OraDynaset工具中的某个字段或数据项目,他经由过程Value属性设置或获得OraDynaset工具中的某个字段
值。
8.Oraparameter工具
Oraparameter工具暗示一个在SQL命令或PL/SQL程序区块中所附加的变量。
9.OraparameterArray工具
OraparameterArray工具是Oraparameter工具的数组范例,OraparameterArray工具能够直接经由过程OraDatabase工具的
Oraparameter数据汇合来增添、存取或删除某个变量。
上面举一详细例子申明怎样在ASP中使用OracleObjectforOLE会见Oracle8。
笔者编写了一个在ASP中使用OracleObjectforOLE2.3查询Oracle8.0.5数据库,并举行分页显现的程序。因为
Orasession工具的属性中没有把持分页的属性,应此笔者自编了分页把持的程序。
以下共两个ASP文件(query.asp和query1.asp),query.asp文件先获得数据库表的内容,然后盘算分页的页数,假如页数超
过一页,则交由query1.asp处置,其程序代码以下
‘query.asp
<%
‘毗连数据库
setorasession=createobject("oracleinprocserver.xorasession")
setoradatabase=orasession.dbopendatabase("orant","scotter/tiger",0)
‘设置查询前提
sql="select*fromcq_hjwj"
setsession(oradynaset)=oradatabase.dbcreatedynaset(sql,0)
‘设置页长
pagesize=15
ifsession(oradynaset).recordcount=0then
response.write"无切合前提的数据"
else
response.write"<h3>查询了局</h3>"
‘盘算页数
pages=int(session(oradynaset).recordcount/pagesize)
ifpages*pagesize=session(oradynaset).recordcountthen
pages=int(session(oradynaset).recordcount/pagesize)
else
pages=int(session(oradynaset).recordcount/pagesize)+1
endif
ifrequest("page")=""then
page=1
else
page=cstr(request("page"))
endif
response.write"共"&pages&"页,今朝第"&page&"页"
response.write"<tableborder=5><tr>"
fori=0tosession(oradynaset).fields.count-1
response.write"<td>"
response.writesession(oradynaset).fields(i).name
response.write"</td>"
next
response.write"</tr>"
startrow=(page-1)*pagesize+1
endrow=page*pagesize
oradynaset.movetostartrow
forj=startrowtoendrow
response.write"<tr>"
fori=0tosession(oradynaset).fields.count-1
response.write"<td>"
response.writesession(oradynaset).fields(i).value
response.write"</td>"
next
response.write"</tr>"
session(oradynaset).dbmovenext
ifsession(oradynaset).eofthenexitfor
next
response.write"</table>"
endif
ifpag</p>写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们) |
|