Access (VBA)

Access VBAに関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(その他 : Access 2010)
ファイルサイズ肥大化の問題
投稿日時: 19/09/25 15:45:16
投稿者: 滝沢

3つのシステムがあり、ファイル肥大化について以下の状況です。
 
・システムA.accdb
 毎日テーブルのレコードを「削除クエリ→追加クエリ」を繰り返す処理がある。(数百行×1,000回程度)
 そのテーブルはファイル内にある。
 この処理でファイルサイズが1日800MBほど大きくなる。
 
・システムA’.accdb
 上記と同じ処理だが、当該テーブルは別ファイルのリンク。
 ファイルサイズの肥大化スピードはシステムAと同様。(別ファイルの方は肥大化しない)
 
・システムB
 毎日csvファイルの取り込みを行う処理がある。(数十万行×2回)
 削除クエリ→インポート処理。
 書き込まれるテーブルは別ファイルのテーブルをリンクしている。
 この処理でファイルは肥大化しない。(別ファイルが1日に300MBほど大きくなる)
 
元々AとBを使っていたが、A自身が肥大化するのが困り、まだ別ファイルが肥大化する方が
運用が楽になる(※)ので「B」を真似て「A’」を作ったんですが意図した結果にはなりませんでした。
※Aは色んな機能があるため、常に誰か使用してて最適化を掛けられないが、A’なら
別ファイルを最適化するタイミングが結構あるため。
 
そもそもこの結果はAccessの仕様として正しいのでしょうか?
ファイル肥大化を避ける、別の良い方法はありますでしょうか?
 
よろしくお願い致します。

回答
投稿日時: 19/11/15 11:24:16
投稿者: マヨイ

文だけではわからないため質問させてください。
システムA.accdb とシステムA’.accdbはクエリなどの処理用と元データがあるデータ用ということでしょうか?
リンクテーブル等でリンクしている認識であってますか?

投稿日時: 19/11/15 17:04:19
投稿者: 滝沢

マヨイ様
コメントありがとうございます。
 
>システムA.accdb とシステムA’.accdbはクエリなどの処理用と元データがあるデータ用?
>リンクテーブル等でリンクしている認識であってますか?
 
・システムA.accdb
実テーブルと、クエリ・フォームがあり、実際に操作するファイルです。
 
・システムA’.accdb
実テーブルは無く、クエリ・フォームがあり、実際に操作するファイルです。
クエリとフォームはシステムAと全く同じです。
別のAccessファイル(データA.accdbとでもします)のテーブルをリンクしています。
 
・システムB.accdb
実テーブルは無く、クエリ・フォームがあり、実際に操作するファイルです。
別のAccessファイル(データB.accdbとでもします)のテーブルをリンクしています。
 
結果、ファイルサイズについては、
システムA:増える
システムA’:増える データA:増えない
システムB:増えない データB:増える
 
これで伝わりましたでしょうか?
まだ解決できておりませんので、よろしくお願い致します。

トピックに返信