ASP编程:在ASP中利用Oracle数据库技能(一)
缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。 Oracle是世界上用得最多的数据库之一,举动办事器网页(ASP)是一种被普遍用于创立静态网页的功效壮大的办事器端剧本言语。很多ASP开辟人员一向在思索,可否在开辟互联网使用、电子商务网站、互联网办理体系时联合利用ASP和Oracle数据库?这个成绩的谜底是一定的,咱们还可使用VB会见Oracle数据库。在本篇文章中,咱们将次要会商若何利用ASP来处置Oracle数据库中数据的办法。 在入手下手会商这个成绩前,咱们需求懂得几个后台常识,Oracle Objects for OLE就是个中之一。Oracle Objects for OLE是Oracle开辟的一个两头件,它答应利用微软的OLE尺度的客户端使用法式会见Oracle的数据库。或许会有读者说,咱们也能够利用ODBC会见Oracle的数据库。固然,可使用ODBC会见Oracle数据库,但我以为,Oracle Objects for OLE比ODBC更平安,并且完整撑持PL/SQL。PL/SQL是Oracle对SQL号令集的扩大,开辟人员可以使用它对非布局化的SQL号令块停止流掌握和逻辑设计。假如装置的是Oracle8i数据库,我信任你已在利用Oracle Objects for OLE。假如还没有利用Oracle Objects for OLE,可以从Oracle的网站高低载它。别的,咱们还需求懂得Oracle针对Visual Basic开辟的二个对象和一个接口:OraSession、OraDynaset对象和OraDatabase接口。OraSession对象办理使用法式的OraDatabase、OraConnection和OraDynaset,它是由ASP的CreateObject而不是Oracle Objects for OLE创立的一个对象。OraDatabase接口向Oracle数据库暗示体现用户对话,并为SQL、PL/SQL的履行供应办法。它们每一个都有一些属性和办法。例如,OraDynaset对象有BOF、EOF、Bookmark、Connection等属性和AddNew、Update、Delete、Edit、Refresh、Clone等10个办法。
上面咱们就入手下手切入主题,会商若何利用ASP处置Oracle数据库中的数据。
筹办任务
咱们需求甚么样的情况和东西?
1)我利用了Oracle8i、IIS5.0、Windows2000专业版作为使用法式的开辟和运转情况。
2)在Oracle数据库中创立一个名字为MYTABLE1或相似的表。
ID (type: number) User Name(type: varchar2) Phone(type: varchar2) Email(type: varchar2) 100 Colin Tong 999-999-8888 colinjava@hotmail.com 111 John White 888-888-8888 johnw@yahoo.com 101 Don Wod 416-333-3344 donwod@test.com
数据的会见和存取
1) Instantiate OO4O Object, OraSession and interface OraDatabase for connecting to ORACLE.
初始化Oracle Objects for OLE、OraSession对象和OraDatabase接口,为毗连ORACLE数据库作筹办。
起首,利用CreateObject创立OraSession对象,然后经由过程翻开一个与Oracle的毗连创立OraDatabase对象,以下所示:
<%
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.OpenDatabase("", _
"username/password", Cint(0))
%>
“username”和“password”是你所利用的关系数据库的用户名和口令。
2)创立OraDynaset对象履行SQL号令。咱们可使用CreateDynaset或DbCreateDynaset创立纪录集。
<%
'execute SQLSet OraDynaset = OraDatabase.DbCreateDynaset( _"select * from
mytable1", cint(0))
%>
3)存取数据并删除创立的对象。
<%
Do While(OraDynaset.EOF = FALSE)
Response.write(OraDynaset.Fields("ID"))
Response.write(OraDynaset.Fields("UserName"))
... others ...
... ...
OraDynaset.MoveNext
Loop
'remove OraSession
Set OraSession = Nothing
%>
编纂数据纪录
咱们将利用OraDynaset的办法完成对数据纪录的编纂。
1)利用SQL语句创立OraDynaset对象。
<%
'创立ID= fID的纪录的OraDynaset对象。
Set OraDynaset = OraDatabase.CreateDynaset(_
"select * from MYTABLE1 where ID= "& fID, cint(0))
%>
fID是想拔出更更新的纪录的ID值。
2)履行OraDynaset更新或添加数据纪录。
<%
'利用Edit办法更新ID=fID纪录的域。
'或利用AddNew拔出一个新纪录
OraDynaset.Edit
OraDynaset.Fields("Phone").Value = fPhone
OraDynaset.Update
' 删除创立的对话
Set OraSession = Nothing
%>
实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 那么,ASP.Net有哪些改进呢? 先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习 Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名") 没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 那么,ASP.Net有哪些改进呢? 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
页:
[1]