• ベストアンサー

ACCESS97で テーブルの更新について

ACCESS97で 相談したいことがあります。 定期的にあるテーブルを作成する時、 (1)テーブル作成クエリーを毎回 実施する方法と (2)元々テーブルを作っておいて  毎回、全件削除クエリー、全件追加クエリーを実行する 方法などがあります。  得られる結果は同じです。 この時、毎回テーブル作成クエリーを実施すると ムダにアクセス自体のファイルが大きくなったり データベースが壊れることが多い と聞いたので (2)の方にしたのですが、処理時間が(1)よりも掛かってしまいます。 そこで、上記(1),(2)に関する方法はどちらの方がお勧めでしょうか? ※ 件数は100000件 くらいあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • Nii
  • ベストアンサー率48% (79/162)
回答No.2

>どちらの方がお勧めでしょうか? 使用目的にもよりますが、件数がかなりありますので、インデックスの設定をしなければ、実用的なパフォーマンスが出ないと思います。 インデックスの数が少なければ、(2)で組み、多ければ、(1)で私は組みます。 後、ARCさんも書かれていますが、私も別MDBにし、FileCopyを使用して、既存のリンクが貼られたMDBを空のMDBで上書きします。 今までの経験上、(1)(2)に関係無く、同一MDB内で、これだけの件数のテーブルを操作した場合、再々壊れちゃいますから・・・

その他の回答 (1)

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

ん~、私なら日付ごとに別々のMDBにして、リンクテーブルを使って親MDBとつなげますが。 Access97であれば、データの破損とかも時には発生しますので、同じMDB内で大量の削除/追加を連続して行いたくはないのです。 別MDBをその都度作る方法だったら、信頼性の向上に加えて一々最適化をしなくてすむ、といったメリットも得られます。ファイルのバックアップとかも容易ですし。