<レコードレベルロックをページレベルロックに戻す>

レコードを書き換える時,Access は,他の人がそのレコードを書き換えないように,レコードをロックします。

ロックの種類は,レコードレベルロック(Row Level Locking) と ページレベルロック(Page Level Locking) の2種類があります。

レコードレベルロックは,書き換えるレコードのみロックします。

ページレベルロックは,書き換える近くの .mdbファイル内のレコードもロックします。

Access2000 では,レコードレベルロック既定の動作になっています。

これはこれで問題ないのですが,どうも出来がよくないようで,1レコードに対して 4KB ずつどんどん増えていってしまいます。これが,Access2000の不具合なのか仕様なのかはわかりません。

このため,過去のファイルを続けて入れるときに,ファイルが巨大化するので,こまめに Race.mdb を最適化しないといけないため大変面倒でした。

個人で使う場合,ページレベルロックにしても,データの書き換えになんら不都合は起きないので,ページレベルロックに変更することをお勧めします。

ページレベルロックは,Access97 のころからある方式で,動作が安定しているため上記のようなファイルの巨大化が起きることがないようです。

<レコードレベルロックの解除の仕方>

JvsfAc34.mdb 等いずれでも良いからファイルを開き,F11 キーを押します。

ツールオプション をクリックします。

詳細タブ を選択して,レコード レベルでロックして開く のチェックを外します。

OK を押して,閉じます。この設定は,次に開いた時から有効になるので,ファイルを閉じて,Access自体を終了します。

次からは,ページレベルでロックするようになります。これでファイルの巨大化は避けられます。(たぶん ... )