こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

access初心者なので

初心者なので初歩的な質問ですが。access2007で販売管理のプログラムを作ろうと思いますが、疑問にぶち当たってしまいました。毎日毎日物品を売るたびに販売データをテーブルに入力しますが、月日を重ねるにつれてそのデータ量は膨大になってしまいます。古くなっていくデータはどのように処理したら良いでしょうか? 方法として(1)そのまま増えるにまかせる(2)毎年新しい販売テーブルを作り、新しいにデータはそちらに入れて、古い販売テーブルはバックアップとして別にとっておく。。。など、どうしたら良いでしょうか?

投稿日時 - 2008-09-28 23:02:54

QNo.4363792

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

>accessの場合データの保存場所は独立したフォルダには入らないのですか
アクセスのメニューバーで
ファイル/外部データの取り込み/テーブルのリンク
で外部データを内部データと同様に扱えます。なので「被リンクファイル」に全部のテーブルを入れ、それ以外のクエリ、フォーム、レポート. . . .を「プログラムファイル」に収めれば、分離したことになります。
MS-Access環境を使わず、他言語(私ならばDelphi、その他VBやVC、etc.)を使用すれば、当然ながら、プログラムとデータは完全分離します。この方がプログラムするのは楽というか、色々細かい制御ができます。

投稿日時 - 2008-10-01 06:58:22

ANo.3

>accessの場合データの保存場所は独立したフォルダには入らないのですか、
>プログラムと一緒になっていて分離はできないのでしょうかね
別のmdbに追い出すこともできますよ
そうすれば別ファイルになります

投稿日時 - 2008-10-01 00:34:19

「初心者」と書かれているので、多少蛇足かもしれませんが

1.データが増えても処理速度はほとんど変わらない
実際試験してみました。郵便番号データ121,585件から郵便番号をキーに28件選び出すのと、郵便番号データ604件から郵便番号をキーに28件選び出す時間を計ると、私の環境ではともに表示するまで63ミリ秒で差を検出できませんでした。

2.HDに占める領域
これはデータ数に正比例します。しかし外付けHDで1GBが40円程度ですからコスト的には問題にならないと考えます。

最後に老婆心から、「古いデータも破棄しない」ことをお奨めします。別テーブルに移すのも一つの方法ですが、面倒だし、1.に書いたように処理スピードに大差はありません。強いて別けたければ「処理済み」などのフラッグで行うのが良いでしょう。

投稿日時 - 2008-09-29 09:56:36

お礼

私の疑問に対して回答をいただきましてありがとうございました。
確かにデータが増えた時の処理速度とデータサイズを心配していましたので回答をみて少し安心しました。売上伝票の数としては600件/月、10000件弱・/年くらいです。5年で4~5万件でしょうか。accessの場合データの保存場所は独立したフォルダには入らないのですか、プログラムと一緒になっていて分離はできないのでしょうかね

投稿日時 - 2008-09-30 23:19:37

ANo.1

年が変わると新しいテーブルを作るなどということはしません
そんなことをすると毎年関連するクエリやVBAなど
かなりの手直しをしないといけなくなります

一つのテーブルにどんどん蓄積していきますが
明らかに古いデータは不要というのであれば
削除するか、保存用の別テーブルに追い出します

投稿日時 - 2008-09-29 00:27:17

お礼

回答大変ありがとうございました。
参考になりました。また質問をすることがあると思いますが、その時はよろしくお願いします。

投稿日時 - 2008-09-30 23:22:12

あなたにオススメの質問