質問: accessの実力について accessで在庫管理をしよと考えています。 そこで、accessのソフトとしての実力が気になります。 前提として、accessのインストールしているパソコンの実力は度外視します。 商品の入庫と出庫の差から、在庫を知りたいのですが、この入庫と出庫が数万件(ファイルは2g以内)とした場合でもちゃんと処理されるのでしょうか? あんまり、accessが信用できないので(dbのくせに結果が出るまでに待たされる等が起こるのではと考えています。)、”在庫のテーブル”を作り入出庫のたびに”在庫テーブル”を更新しようかと考えています。 将来的には、dbをmysqlか何かに変更して、accessは入力や確認だけに使おうと考えています。 いままでに、accessで大量のデータを扱ったことある方の、経験などがありましたらお願いします。 以前、徹夜で仕事しているときにエクセルが固まり、データがパーになり、それ以来officeは信用しておりません。 (おかげでコマメに保存する習慣がつきました。)
回答: 最近の物は使っていないので、数年前の経験上の話です。 pcの性能はceleronの500mhz位の物で、osはwindows2000、accessは2000です。 >この入庫と出庫が数万件(ファイルは2g以内)とした場合でもちゃんと処理されるのでしょうか? 私の経験上では、問題無しです。 数万件のレコードを扱っていましたが、当時のパソコンでも、 待たされる事はほとんど無かったです。 多少時間が掛かったとしても、ちゃんと処理されます。 数十万単位のレコードまでは、経験がありますが、 限界を感じた事(処理が極端に重くなる等)はありませんでした。 (レコード数が増えると、それなりに重くはなりますが・・・) もちろん、テーブルの設計や、処理の内容によりますので、一概には言えません。 処理の内容によっては、数万件でも、フリーズ状態です。(^^; (dlookup関数などを多用した、重いなクエリなど・・・) まぁ、この辺りは、作る側の腕次第ですね・・・ 入庫、出庫の集計なら、基本的な集計クエリで処理出来ますので、 数万件程度なら全く問題ないと思います。 >在庫のテーブル”を作り入出庫のたびに”在庫テーブル”を更新しようかと考えています。 この件に関しては微妙ですね・・・ データベース理論では、入庫、出庫から計算できる、在庫は、 テーブルを持たず、毎回計算するのが基本となります。 入庫、出庫、在庫のテーブルを矛盾無く更新するには、 トランザクションを管理する必要があり、高度な内容になります。 http://www.serpress.co.jp/access/vba028.html 集計時間は短縮されるかもしれませんが、 それを実現するためのシステムは、かなり複雑になります。 デメリットも多いですよ。 >将来的には、dbをmysqlか何かに変更して、accessは入力や確認だけに使おうと考えています。 基本的には賛成しますが、商用利用のmysqlはライセンスに関して注意が必要です。 postgresqlの方が商用利用には向いています。(ライセンスの面で) 両者の違いは、下記など参考にどうぞ。 http://www.thinkit.co.jp/free/article/0603/10/1/ >それ以来officeは信用しておりません。 officeに限らず、過信は禁物ですよ。 hddが丸ごと壊れる事もありますから。(私は経験あります・・・(^^;) こまめな保存、定期的なバックアップは基本ですね。