用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