こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ASPでAccessのデータを更新、削除

ASPでAccessのデータベースに対するデータの更新、レコードの
削除が出来ません。(データの検索、参照は出来ています。)
DBはAccess2000です。
下記のようなエラーメッセージが出てしまいます。

【エラーメッセージ】
ADODB.Recordset エラー '800a0cb3'

オブジェクトまたはプロバイダは要求された操作を実行できません。

/asp/ParsonUP.asp, 行 95

【プログラム】
<%
dMode = Request.QueryString("MODE")
sSyain = Request.QueryString("SyainNO")
sSimei = Request.QueryString("Simei")
sKaisya = Request.QueryString("KAISYA")
'************* DB コネクション **************************
Dim fPROV,fDBNAME
fPROV = "Microsoft.Jet.OLEDB.4.0"
fDBNAME = "D:\Inetpub\wwwroot\asp\data\OP_tbl2.mdb"
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.ConnectionString = "Provider=" & fPROV & ";Data Source=" & fDBNAME
ObjConn.Open
Set ObjRS = Server.CreateObject("ADODB.Recordset")
StrSQL = "SELECT * FROM TM_個人情報 WHERE TM_個人情報.社員NO = '" & sSyain & "';"

'**************************************************
If sSyain<>"" Then
Select Case dMode
Case "UpDT"'更新登録
ObjRS.Open StrSQL, ObjConn, adOpenStatic
With ObjRS
.Fields("氏名").Value=sSimei
.Fields("所属会社").Value=sKaisya
.Update
.close
End With
Case "DelDT"'削除
ObjRS.Open StrSQL, ObjConn
ObjRS.Delete
End Select
Else
Response.Write "<H2>処理に失敗しました</H2>"
End If
%>

投稿日時 - 2002-10-17 14:37:36

QNo.383010

すぐに回答ほしいです

質問者が選んだベストアンサー

先程の回答でも書いておきましたが、adLockOptimisticやadCmdTextの定数を
ちゃんと宣言されていますか?

#TypeLib宣言かadovbs.incをインクルードしていれば問題ないのですが・・・

されていなければこんな感じでどうぞ

Const adLockOptimistic = 3
Const adCmdText = &H0001

投稿日時 - 2002-10-17 19:12:30

補足

再びご回答有難う御座いました。ConstでadLockOptimistic とadCmdText を宣言する事で、動くようになりましたが、出来ればadovbs.incをインクルードして動作させたいので、どのようにしたら宜しいでしょうか?ちなみにadovbs.incはC:\Programfils\common fils\system\adoの中に入っています。

投稿日時 - 2002-10-18 08:25:05

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

ObjRS.Open StrSQL, ObjConn, adOpenStatic

の部分を

ObjRS.Open StrSQL, ObjConn, adOpenStatic, adLockOptimistic, adCmdText

に変更してみてはいかがでしょうか?
LockTypeを指定しないと、デフォルトでは adLockReadOnlyが指定された記憶があります。

#多分大丈夫だと思いますが、adLockOptimisticやadCmdTextの定数宣言もお忘れなく・・・

以上、参考になれば幸いです。

投稿日時 - 2002-10-17 16:47:24

補足

ご回答有難う御座います。ご指摘の通り試みてみましたが、次のようなエラーメッセージが出てしまいました。”ADODB.Recordset エラー '800a0bb9' 引数が間違った型、または許容範囲外であるか、競合しています。”

投稿日時 - 2002-10-17 17:02:48

あなたにオススメの質問