以前DB接続でお世話になりましたが、また引っかかってしまい困っております。
大変申し訳ございませんがよろしくお願いします。
MySQLとVB6.0をMyODBCで接続しました。
しかしMoveNextメソッド、MoveFirstメソッドは実行されているにもかかわらず
MovePreviousメソッドの実行の際に
「実行エラー '3219'
このコンテキストで操作は許可されていません。」
と出て動作してくれません。ためしにMoveLastメソッドを実行したところ
「実行エラー '-2147217884 (80040e24)'
行セットは逆方向フェッチをサポートしていません。」
と出ます。
これにより進むことは出来ても戻れないらしいということは理解できたのですが原因がわかりません^^;
接続キーは以下のとおりです。
cn.ConnectionString = "Provider=MSDASQL.1;" & _
"Persist Security Info=False;" & _
"User ID=uni;Data Source=MySQL;" & _
"Initial Catalog=MyDB"
この後Openメソッドを実行し、レコードセットをしてメソッドを実行すると上記のようなエラーメッセージが出ます。
もし原因・解決策がお分かりになる方がいらっしゃれば教えていただけるととてもうれしいです。
もし質問内容で不明快な部分や足りない情報がある場合にはご指摘お願いします。
カーソルモードを特に指定しなかった場合、処理が高速な
MoveNextのみが可能な「前方移動専用カーソル」
を持ったRecordsetとして取得されます。
MovePreviousやBookmark等の機能を使いたい場合は、Recordsetの
CursorLocatioin, CursorType, LockTypeプロパティなどを
明示的に指定して開くようにして下さい。
設定をしたところきちんと動くようになりました。
ありがとうございました
ツイート | ![]() |