ADO使用的简单介绍 飞鸟 2001年 41期 ADO即ActiveX Data Objects,是微软提供的使ASP具有访问数据库的组件。熟悉VB数据库编程的朋友会发现ADO与RDO(Remote Data Objects)有某种类似的地方。但据说ADO的访问速度更快,内存需要更小。   ADO中主要有如下几种对象Connection、Command、Recordset、Error、Parameter、Property、Field。而Recordset对象是ADO访问数据的主要界面。   Recordset常通过如下的方式访问数据。   1.通过Execute方法   On a Command object   Set recordset = command.Execute _   (RecordsAffected,Parameters,Options)   command.Execute RecordsAffected,_   Parameters,Options   On a Connection object:   Set recordset = connection.Execute _   (CommandText,RecordsAffected,Options)   这种方式下,做一个查询,是十分简单有效的(尤其是用connection)。曾对Access写过这样的程序:   set rs=conn.execute("select*from employee")   结果发现rs.recordcount等于-1,也就是在这种方式下无法知道记录总数。   这种方式一个强大的功能就是可以知道操作影响的记录数。   例如:   dim recordsAffected   set rs=conn.execute( _   "delete * from employee where sales<100",_   recordsAffected)   response.write cstr (recordsAffected)& _   " record(s)deleted"   2.通过Open方法   recordset.Open Source,ActiveConnection,_   CursorType,LockType   这种方法下,你必须先调用Server.Createobjectm()产生一个Recordset实例:   dim rs   rs=server.createobject("adodb.recordset")   调用open方法的时候跟前面一样,也可使用Command或不用。   先来说说不用Command对象的情况,下面是做查询记录的例子:   dim sql   dim rs   dim conn   on error resume next   set conn=server.createobject("adodb.connection")   conn.open "employee","sa",""   sql="select * from employee where sales>="& _)   cstr(minSales)   set rs=server.createobject("adodb.recordset")   rs.open sql,conn,1,1   '11分别是 CursorType和 LockType   '请参考 ADO的说明书   '如果以这种方式打开Recordset,   ' recordcount就不会是-1了   do while not rs.eof   ' here is some operate   rs.movenext   loop   rs.close   conn.close   下面是删除记录的例子:   dim sql   dim rs   dim conn   on error resume next   set conn=server.createobject("adodb.connection")   conn.open "employee","sa",""   sql="delete from employee where sales<=100"   set rs=server.createobject"adodb.recordset"   rs.open sql,conn,3,3   response.write "record(s,deleted")   conn.close   注意此时由于rs并不返回记录集。所以结束时不必关闭rs。这样的用法同时适用于SQL的update、insert into语句。   再来讨论使用Command对象的open方式。   使用之前先要建立Command对象的实例   dim cmdTemp   dim dataconn   Set DataConn = Server.CreateObject _   ("ADODB.Connection")   dataconn.open "employee","sa",""   Set cmdTemp = Server.CreateObject _   ("ADODB.Command")   cmdTemp.CommandText = _   "SELECT (FROM employee WHERE employeeID=" & _   cstr(paraID)   cmdTemp.CommandType = 1   Set cmdTemp.ActiveConnection = dataConn   dim rs   set rs=server.createobject("adodb.recordset")   rs.Open cmdTemp(1,3)   rs("salary")= rs("salary")+ 200   rs("...")=....   ......   rs.Update   rs.close   dataconn.close   这种介绍只是让大家简单了解ADO,权作抛砖引玉吧。