|
WindowsVistaに対応するために、現行Access97で稼働中のシステムをAccess2003(Vista動作保証あり)に変換することになりました。
データの格納先はmdb、更新処理にはDAOを使用しており、変換後(access97からオブジェクトインポート)に以下のような事象に遭遇しました。
1.テーブルAをOpenrecordsetで開く。
2.テーブルAに対してEXECUTEコマンドでの更新処理を行う
↓
1.にてOPENしているレコードについて、更新不可
(Accessの2KBページロックから外れるところは更新されている?)
OPENRECORSETで開く際のオプション定数や、レコードセットのクローズ等をすべて試しましたが、試行錯誤の結果判明した対策は以下のとおりでした。
対策1.Access2003へ変換時、基本はAccess2000形式だが、
2000-2002形式にし、そこへインポートする。
対策2.Access2003で開くとき、排他モード指定で開く。
今のところ、上記2点の解決策が見つかっていますが、その根拠が見当つきません。
知識をお持ちのかたが見えましたら、お助けお願いできませんでしょうか。
|
|