前回、指示をされた内容ででテストを試みましたがやはり、結果は-1

Set db1=Server.CreateObject("ADODB.Connection")
db1.Provider="Microsoft.Jet.OLEDB.4.0"
db1.ConnectionString=Server.MapPath("../master.mdb")
db1.Mode=1
db1.Open
'
Set rs1=Server.CreateObject("ADODB.Recordset")
Rs1.Pagesize = 5
'
keyword = "ABC"
'
SQL1a = "SELECT top 5 * FROM dbFILE WHERE dbTABEL Like '%" & Keyword & "%'"
Set Rs1=db1.Execute(SQL1a)
Rs1.CursorType = adOpenKeySet
intP = Rs1.RecordCount
Response.Write "RecordCount = " & intp & "<BR>"

MSDNの説明でRecordCountなど参照しましたが理解不足でしょうか ?

宜しく、お願いします。

A 回答 (1件)

AccessってadOpenKeySetをサポートしていなかったような・・・、って試したわけではないので保証できませんが(^^;;



直接コード書いているので動作保証できませんが
以下のようにすれば動くような気がします
#エラー出たらすいません

Set db1=Server.CreateObject("ADODB.Connection")
db1.Provider="Microsoft.Jet.OLEDB.4.0"
db1.ConnectionString=Server.MapPath("../master.mdb")
db1.Mode=1
db1.Open

keyword = "ABC"
SQL1a = "SELECT top 5 * FROM dbFILE WHERE dbTABEL Like '%" & Keyword & "%'"

Set rs1=Server.CreateObject("ADODB.Recordset")
rs1.Open SQL1a, db1, adOpenStatic, adLockReadOnly, adCmdText

rs1.Pagesize = 5
intP = Rs1.RecordCount
Response.Write "RecordCount = " & intp & "<BR>"

rs1.Close
Set rs1=Nothing

db1.Close
Set db1=Nothing

あと各定数(adOpenStaticなど)は別途宣言する必要があります。
    • good
    • 0
この回答へのお礼

hequil さん 何度も助けて頂き、本当に有難うごさます。
何とか以下のようなリストで思い通りの結果を得られました。

 これが怪しくて adOpenStatic, adLockReadOnly うまく変換されていない
ようです。

Set rs1=Server.CreateObject("ADODB.RecordSet")
Set db1=Server.CreateObject("ADODB.Connection")
db1.Provider="Microsoft.Jet.OLEDB.4.0"
db1.ConnectionString=Server.MapPath("../master.mdb")
db1.Mode=1
db1.Open
'
SQL1a = "SELECT top 10 * FROM ma01pf WHERE ma01mesg Like '%" & aryKey & "%'"
rs1.open SQL1a,db1,3,3

お礼日時:2002/02/12 21:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング