データベースにレコードを追加するには、Command オブジェクトと RecordSet オブジェクトのどちらを使用するのが良いですか?
どれを選べばいいでしょうか?
コマンドはパラメータ転送、特に一括パラメータ転送に使用します。 Command オブジェクトは主に SQL ステートメントと StoredProcude にパラメータを渡します。
SQL の強力な機能を利用してデータベース操作を完了し、RecordSet オブジェクトをデータ オブジェクトをカプセル化し、一連のデータを提供すると考えることができます。
メソッドとプロパティを使用してデータベースプログラミングを簡素化します。
2 つのメソッドを使用してデータベースにレコードを追加する次のデモを通して、これら 2 つのオブジェクトがいくつかの問題に対処するために異なるメソッドを使用していることがわかります。
RecordSet オブジェクトの方が理解しやすいように思えますが、特にバッチでレコードを追加する場合、Command のパフォーマンスが優れています。
1. 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=春峰に挿入 (ID,名前,) & _
&values(?,?,?)
set param=comm.CreateParameter(ID,adInteger,adParamInput,3,4)
comm.Parameters.Append パラメータ
set param=comm.CreateParameter(NAME,adVarChar,adParamInput,255, intels)
comm.Parameters.Append パラメータ
通信実行
接続閉じる
2. 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(名前)=インテル
rs.アップデート
rs.close
接続閉じる