用Command对象和RecordSet对象向数据库增加记录哪一个更好?
请问应该选择哪一个?
Command是用来做参数传递的,尤其是批量参数传递。Command对象主要是向SQL语句、StoredProcude传递参数,
依靠SQL的强大功能来完成数据库的操作;而RecordSet对象,我们可以看作是封装了数据对象,并提供了一系列
的方法和属性来简化数据库的编程。
我们通过下面用两种方法向数据库中增加一条记录的演示,可以看出,这两个对象在处理一些问题上所用的不同的方法:
RecordSet对象似乎更加好理解一些,但Command的性能更优越一些,特别是在批量的加入记录的情况下。
一、用Command对象的方法:
const adCmdText=&H0001
const adInteger=3
const adVarChar=200
Const adParamInput = &H0001
set conn=Server.CreateObject("ADODB.Connection")
set comm=Server.Createobject(“ADODB.Command”)
conn.open "Driver={ Microsoft Access Driver};DBQ="& _
Server.Mappath(“/source_asp")&"/property/chunfeng.mdb;"
comm.ActiveConnection=conn
comm.CommandType=adCmdText
comm.CommandText="insert into chunfeng (ID,Name,) "& _
&"values(?,?,?)”
set param=comm.CreateParameter("ID",adInteger,adParamInput,3,4)
comm.Parameters.Append param
set param=comm.CreateParameter("NAME",adVarChar,adParamInput,255, "intels")
comm.Parameters.Append param
comm.Execute
conn.close
二、用RecordSet对象的方法
const adCmdTable=&H0002
set conn=Server.CreateObject("ADODB.Connection")
set rs=Server.Createobject("ADODB.RecordSet")
conn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ="& _
Server.Mappath("/source_asp")&"/property/chunfeng.mdb;"
rs.ActiveConnection=conn
rs.open "chunfeng",,,adCmdTable
rs.addnew
rs("ID")=4
rs("Name")="intels"
rs.update
rs.close
conn.close