ADO使用的简单介绍
?牐燗DO中主要有如下几种对象Connection、Command、Recordset、Error、Parameter、Property、Field。而Recordset对象是ADO访问数据的主要界面。
?牐燫ecordset常通过如下的方式访问数据。
?牐?1.通过Execute方法
?牐燨n a Command object??
?牐燬et recordset = command.Execute _
?牐牐≧ecordsAffected,Parameters,Options)??
?牐燾ommand.Execute RecordsAffected,_
?牐燩arameters,Options
?牐燨n a Connection object:??
?牐燬et recordset = connection.Execute _
?牐牐–ommandText,RecordsAffected,Options)??
?牐犝庵址绞较拢鲆桓霾檠鞘旨虻ビ行У模ㄓ绕涫怯胏onnection)。曾对Access写过这样的程序:
?牐爏et rs=conn.execute("select*from employee")??
?牐牻峁⑾謗s.recordcount等于-1,也就是在这种方式下无法知道记录总数。
?牐犝庵址绞揭桓銮看蟮墓δ芫褪强梢灾啦僮饔跋斓募锹际?
?牐犂纾?
?牐燿im recordsAffected
?牐爏et rs=conn.execute( _
?牐?"delete * from employee where sales<100",_
?牐爎ecordsAffected)
?牐爎esponse.write cstr (recordsAffected)& _
?牐?" record(s)deleted"
?牐?2.通过Open方法
?牐爎ecordset.Open Source,ActiveConnection,_
?牐燙ursorType,LockType
?牐犝庵址椒ㄏ拢惚匦胂鹊饔肧erver.Createobjectm()产生一个Recordset实例:
?牐燿im rs
?牐爎s=server.createobject("adodb.recordset")
?牐牭饔胦pen方法的时候跟前面一样,也可使用Command或不用。
?牐犗壤此邓挡挥肅ommand对象的情况,下面是做查询记录的例子:
?牐燿im sql
?牐燿im rs
?牐燿im conn
?牐爋n error resume next
?牐爏et conn=server.createobject("adodb.connection")
?牐燾onn.open "employee","sa",""
?牐爏ql="select * from employee where sales>="& _)
?牐燾str(minSales)
?牐爏et rs=server.createobject("adodb.recordset")
?牐爎s.open sql,conn,1,1
?牐牐?11分别是 CursorType和 LockType
?牐牐?请参考 ADO的说明书
?牐牐?如果以这种方式打开Recordset,
?牐牐? recordcount就不会是-1了
?牐燿o while not rs.eof
?牐牐? here is some operate
?牐爎s.movenext
?牐爈oop
?牐爎s.close
?牐燾onn.close
?牐犗旅媸巧境锹嫉睦樱?
?牐燿im sql
?牐燿im rs
?牐燿im conn
?牐爋n error resume next
?牐爏et conn=server.createobject("adodb.connection")
?牐燾onn.open "employee","sa",""
?牐爏ql="delete from employee where sales<=100"
?牐爏et rs=server.createobject"adodb.recordset"??
?牐爎s.open sql,conn,3,3
?牐爎esponse.write "record(s,deleted")
?牐燾onn.close
?牐犠⒁獯耸庇捎趓s并不返回记录集。所以结束时不必关闭rs。这样的用法同时适用于SQL的update、insert into语句。
?牐犜倮刺致凼褂肅ommand对象的open方式。
?牐犑褂弥跋纫?立Command对象的实例
?牐燿im cmdTemp
?牐燿im dataconn
?牐燬et DataConn = Server.CreateObject _
?牐牐?"ADODB.Connection")
?牐燿ataconn.open "employee","sa",""
?牐燬et cmdTemp = Server.CreateObject _
?牐牐?"ADODB.Command")??
?牐燾mdTemp.CommandText = _
?牐?"SELECT (FROM employee WHERE employeeID=" & _
?牐燾str(paraID)
?牐燾mdTemp.CommandType = 1
?牐燬et cmdTemp.ActiveConnection = dataConn
?牐燿im rs
?牐爏et rs=server.createobject("adodb.recordset")
?牐爎s.Open cmdTemp(1,3)
?牐爎s("salary")= rs("salary")+ 200
?牐爎s("...")=....
?牐?......
?牐爎s.Update
?牐爎s.close
?牐燿ataconn.close
?牐犝庵纸樯苤皇侨么蠹壹虻チ私釧DO,权作抛砖引玉吧。