精灵巫婆 发表于 2015-1-16 22:12:10

ASP网站制作之ADO数据会见模子初学者进门

ASP.NET和ASP的比较,技术上比较已经没什么可说的了.新一代在大部分程度来说当然是比旧一代好了.关键看你对所做软件的理解了.因人而定.会写的话也可能比ASP.NET写得更有效率和更方便重用ado|初学|会见|数据  ADO(ActiveXDataObjects)是Microsoft供应和倡议利用的新型的数据会见接口,详细完成为Automation。如许,程序员能够在各类撑持Automation的开辟情况下便利地会见ADO工具,如VisualBasic、VisualC++、VisualJ++及Delphi等。ADO被完成为OLEDB之上的一个薄层,这使得ADO能够有更快的会见速率,更容易利用,同时更节俭资本。值得注重的是,关于VisualStudio6.0的用户而言,如今供应的ADO2.0要比VisualStudio5.0时期的ADO1.5加倍完全。这意味着程序员能够更加普遍地利用ADO接口,乃至在一切的基于Windows平台的数据会见中利用它。好比对RDS(前身是ADC)的撑持,能够便利的构建高效的Web使用。

  1、对ADO工具的次要操纵

  对ADO工具的次要操纵,同DAO、RDO库的完成基础不异。次要包含6个方面:

  1.毗连到数据源。这是可选的、一般触及ADO的Connection工具。

  2.向数据源提交命令。一般触及ADO的Command工具。在查询中能够与参数工具(Parameter)协同利用。

  3.实行命令,好比一个SELECT剧本。

  4.假如提交的命令有了局前往,能够经由过程ADO的Recordset工具对了局举行操纵,数据存储在缓存中。

  5.假如符合,可将缓存中被修正的数据更新到物理的存储上。

  6.供应毛病检测。一般触及ADO的Error工具。

  以程序员的视角来看,ADO、DAO和RDO三者的工具称号不很不异。但利用ADO工具要比DAO和RDO复杂很多。最次要的一点在于,程序员不必像在利用DAO和RDO那样要从工具模子的顶层入手下手一步步的创立子工具。因而,ADO供应了一种更天真的编程体例。

  2、ADO中次要工具的功效

  Connection工具,暗示了一个到数据源的会话。利用Connection工具的成员,可使用响应的属性翻开到数据源的毗连,设置游标的地位,设置默许确当前数据库,设置将利用的OLEDBProvider,间接提交SQL剧本等。值得注重的是,在提交SQL剧本的义务时,不必创立一个Command工具,便可完成查询。别的,对Connection工具的创立是同其他工具有关的。Command工具,可被用于查询数据库并前往了局在Recordset工具中。也能够举行批操纵和利用数据库的布局,固然,这必要利用的OLEDBProvider供应响应的撑持。别的,能够将一个激活的Connection工具绑定到Command工具的ActiveConnection属性,这使很多个Command工具实例能够共用一个Connection工具。

  Recordset工具,用来封装查询的了局,可称为了局集。

  Field工具,用来表达一行了局中各子段的范例和值。

  Error工具,用来检测和判别在数据库操纵中呈现的毛病,好比毗连失利。在ADO中,很多工具名后多了一个"s",好比Error->Errors,Field->Fields等等。增加"s"意味着是响应工具的Collection(汇合)工具,好比Errors是Error工具的Collection工具。Collection有点像数组(Array),但分歧的是,Collection能够以分歧范例的数据或工具作为本人的元素,而数组中的各元素一般都是不异范例的。以是,在看到一个工具名最初是"s",一般标明这是一个Collection工具,好比Errors中的各元素是由Error工具的实例构成的。

  3、复杂的例子

  如今,我们在经由了后面的展垫后,终究能够进进写代码的历程了。上面是一系列在VisualBasic中编写的代码片断,个中对ADO的利用完整用代码来完成。在入手下手前,请不熟习ActiveXAutomation的读者切记,我们正在利用的,是被完成为ActiveXAutomation的ADO组件。1.翻开Connect.ion工具

  翻开一个到数据源的毗连,即Connection工具的VB代码以下:

DimcnAsADODB.Connection
’声明ADODB.Connection工具变量
DimstrCNAsString
’声明寄存毗连串的字符串变量
Setcn=NewConnection
’实例化Connection工具
’天生毗连串(ConnectionString)
strCN="Provider=Microsoft.Jet.Oledb.3.51;
UserID=Admin;"&_
"DataSource=D:MicrosoftVisual
StudioVB98Nwind.mdb;"
cn.OpenstrCN’挪用Connection工具的办法Open毗连数据源

  以上代码在会见ADO工具时,利用了前绑定(Early-bind),完成前绑定必要从VisualBasic的Project菜单下选择Reference菜单项,并选择MicrosoftActiveXDataObjects2.0Library。在程序中声明的strCN变量中,毗连串属性Provider标识了OLEDBProvider为OLEDBProviderforMicrosoftJet,由于我们会见的是MicrosoftAccess数据文件,利用MicrosoftJetEngine能够取得比ODBC更好的功能。在实验以上代码时有两个中央要注重。起首,要依据体系安装的OLEDBProviderforMicrosoftJet服务选择响应版本,多是3.51,也多是4.0。在本例中利用的是3.51版本。假如利用4.0版本,起首必要将Provider属性改成"Microsoft.Jet.Oledb.4.0";其次,DataSource属性标识了所要会见的数据文件的路径,要依据本人的安装情形作出得当的调剂。文件Nwind.mdb一般被VisualStudio默许安装,一样平常放在VisualBasic的事情目次下。

  除OLEDBProviderforMicrosoftJet之外,VisualStudio6.0还供应了以下的OLEDBProvider,以下所示。

OLEDBProvider范例数据源范例MicrosoftOLEDBProviderforODBCdatabasesMicrosoftOLEDBProviderforMicrosoftIndexServerMicrosoft(r)IndexServerMicrosoftOLEDBProviderforMicrosoftActiveDirectoryServiceMicrosoft(r)ActiveDirectoryServiceMicrosoftOLEDBProviderforSQLServerMicrosoft(r)SQLServerMicrosoftOLEDBProviderforOracleOracledatabases
  这意味着利用ADO接口能够便利地会见以上的各类数据源,要做的就是选择得当的OLEDBProvider。除利用Connection工具的Open办法之外,还可经由过程Recordset工具的Open办法快速地创立到数据源的毗连。这充实表现了ADO的天真性。

  2.创立Command工具

DimcmdAsADODB.Command

Setcmd=NewCommand’实例化Command工具

  3.实行查询

  以Command工具为例。

DimrsAsNewADODB.Recordset

Setcmd.ActiveConnection=cn’绑定激活的Connection工具实例

cmd.CommandText="SELECT*fromCustomers"’天生SQL剧本

Setrs=cmd.Execute’实行查询

  上述的代码仅仅是一种查询路子,别的,ADO的Connection工具的Execute办法和Recordset工具的Open办法也供应了查询才能。前往的了局能够被保留在一个Recordset工具实例中以便后续的数据处置和利用。比方:

DimrsAsNewADODB.Recordset

rs.Opencmd,cn,adOpenDymanic,adLockBatchOptimistic
  别的在SQL剧本的天生体例上,一般能够借助Parameters/Parameter工具来完成。

  4.显现和利用数据

  查询了局由Recordset工具封装。对数据的利用能够经由过程Recordset工具供应的成员(属性和办法)来完成。

rs.MoveFirst

DoWhileNotrs.EOF’判别EOF标志属性(Endoffile)

Debug.Printrs!CustomerID&vbTab&rs!CompanyName&_

vbTab&rs!ContactName&vbTab&rs!ContactTitle

rs.MoveNext’将游标指针移到下一笔记录

Loop

  上述代码将Recordset中的各行纪录打印在VisualBasic的ImmediateWindow中。为了看到打印的了局,能够在上述代码以后,增添一条Stop语句,以便进进Debug形态。

  5.更新纪录

  利用Recordset工具来完成Update操纵。

  rs.Close’封闭之前创建的了局集

  ’翻开新的了局集,具有写操纵权限

rs.Open"Customers",cn,adOpenDynamic,adLockOptimistic,adCmdTable

rs.MoveFirst’虽无需要,但多是一个优秀的习气

rs!CompanyName="Microsoft"’对响应字段付与新值

rs.Update’在物理存储上失效

  除Update之外,写操纵还包含AddNew(增加一条新纪录)和Delete(删除一条新纪录)。别的,Recordset撑持批处置,但这些特性必要由低层的OLEDBProvider撑持。当写操纵呈现毛病时,可依据毛病形貌(会见ADO的Error或VisualBasic的Err工具)来判别缘故原由。另外一个必要注重的是,当利用Recordset工具完成写操纵时,必要事后指定Recordset工具实例非只读。

  6.扫尾事情

  在这个阶段应当显式的开释响应的资本,假如不做的话,一般VisualBasic会主动开释和接纳资本。但关于一个有优秀编程习气的程序员来讲,应当自动地做扫尾事情,就像上面的代码一样。

rs.Close

Setrs=Nothing

Setcmd=Nothing

cn.Close

Setcn=Nothing
实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。

老尸 发表于 2015-1-18 22:46:54

先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习

灵魂腐蚀 发表于 2015-1-26 20:30:11

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件

乐观 发表于 2015-2-4 21:12:11

ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。

admin 发表于 2015-2-10 11:54:03

以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。

仓酷云 发表于 2015-3-17 09:09:49

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

第二个灵魂 发表于 2015-3-24 05:17:03

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
页: [1]
查看完整版本: ASP网站制作之ADO数据会见模子初学者进门