LoginSignup
0
0

More than 1 year has passed since last update.

Microsoft365のAccessでデータベースの最適化修復のやり方と注意点(データベースへの副作用)

Last updated at Posted at 2020-11-09

手動で最適化/修復をする方法

データベースツール ⇒ データベースの最適化/修復。
image.png

ファイルを閉じるときに毎回最適化を走らせる設定

ファイル。
image.png
オプション。
image.png
現在のデータベース ⇒ 閉じるときに最適化する。
image.png

注意点(最適化した時に起こるデータベースへの副作用)

レコードが無い テーブルの オートナンバー型 の採番が 1からスタートにリセット されます。

例えば下図のテーブルについて、IDがオートナンバー型で100まで採番されていたとします。
(次のレコードはID=101の状態)

この状態で最適化をすると、次にこのテーブルの入るレコードはID=1になります。
image.png

レコードがある 場合はリセットされません。
例えば下図の状態で最適化すると、次にテーブルに入るレコードはID=4となります。
image.png

蛇足

最適化するとファイルサイズが格段に小さくなることがあります。
(特にCRUDする回数が多かったり、扱うレコード数が多いAccessファイル)

バックグラウンドで常に最適化を走らせればいいのに…。
なぜ任意のタイミングで実行させたり、あえて毎回やるかどうかの設定を用意しているのか…。
謎…(´・ω・`)

最近は『ファイルを閉じる時に毎回最適化する設定』にして、『オートナンバー型の値に依存しない設計』で開発をスタートしています。

この問題に対応する為に自作ツール作った

バージョン

Access for Microsoft 365 MSO(16.0.13328.20262)32ビット
Windows10 Pro バージョン1909 OSビルド18363.1171

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0