• ベストアンサー

データベースは何が良いでしょうか?

現在、データベースを使用するシステムを構築しようとしています。 現在、想定している環境は、以下の通りです。 1.Windows2000上で動作する。 2.データベースの読み書き用のプログラムは、VB.NETを使用して開発する。 3.テーブルのレコード数は最大1000×365=約37万件 (1000件の顧客で、356日分のデータ) 4.1顧客につき、1月単位、1日単位でデータの表示及び印刷を行う。 現在、データベースの候補として、 ACCESS SQLサーバー オラクル MySQL等を想定しています。 私としては、パフォーマンス的に問題ないならACCESSにしたい。問題があるならSQLサーバーにしたいと考えております。理由は、VB.NETに合うのは同じマイクロソフトの製品だろうという漠然としたものです。また、ACCESSが一番簡単でてっとり早いような気がしたからです。 上記の中で、お薦めのデータベースがありましたらコメントください。またその理由もお願いします。(上記以外でもかまいません)

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

  • ベストアンサー
  • cse_ri2
  • ベストアンサー率25% (830/3286)
回答No.3

>私としては、パフォーマンス的に問題ないならACCESSに >したい。問題があるならSQLサーバーにしたいと考えて >おります。理由は、VB.NETに合うのは同じマイク >ロソフトの製品だろうという漠然としたものです。 >また、ACCESSが一番簡単でてっとり早いような気が >したからです。 過去のAccessに関するQ&Aを丹念に読むとわかるのですが、 Accessは排他制御に弱いこと、またバージョンにもよりますが、 原因不明のDB破壊を起こすトラブルがあることが知られて います。 私としては他の方の回答にあるように、MSDEかSQL-Server を推奨します。 予算に余裕があれば、Oracleも選択肢に入れた方がいいですね。 今回の用件ではたぶん問題ないでしょうが、行単位の排他 制御は、Oracleの方がしっかりした作りになっています。

tatsu99
質問者

お礼

回答ありがとうございました。 >過去のAccessに関するQ&Aを丹念に読むとわかるのですが、Accessは排他制御に弱いこと、またバージョンにもよりますが、原因不明のDB破壊を起こすトラブルがあることが知られています。 この一言で、ACCESSをやめる決心がつきました。大変貴重な情報をありがとうございました。 MSDEかSQL-Serverにします。

その他の回答 (3)

  • ootsu
  • ベストアンサー率46% (340/738)
回答No.4

#2,#3の方がおっしゃてるMSDEは、VS.NETインストール時にオプションでインストール選択できるはずなので、とりあえずMSDEでプロトタイプを作ってみて、というのではどうでしょうか?

tatsu99
質問者

お礼

回答ありがとうございました。 >とりあえずMSDEでプロトタイプを作ってみて、というのではどうでしょうか? MSDEかSQLサーバーにします。MSDEにつきましては、初めて知りましたので、もう少し詳細を調査します。

  • 78tch
  • ベストアンサー率31% (50/157)
回答No.2

もう指針は出ていますがご参考まで。 Accessの中にMSDEというSQLServerのサブセット版みたいなのが入っているのはご存知でしょうか?同時接続者数制限(5人?)が我慢できるのであればそれで十分ではないかと思います。またいざとなったらSQLServerへのアップサイジングも簡単にできるようになっていますよ。排他制御はADOを使えばAccessでもできなくはないかもしれませんが、MSDEにしない理由もまた無いと思いますね。 昔、PEN75MHzのマシンでAccess97で約28万件の簡単な検索BDを走らせてましたが、割と使えましたね。データーのコンバート(TXTファイルからインポート)にはセレ300Aで半日掛かってましたけど。

tatsu99
質問者

お礼

回答ありがとうございました。 MSDEかSQLServerにしようと思い始めました。

  • ootsu
  • ベストアンサー率46% (340/738)
回答No.1

>1.Windows2000上で動作する。 >2.データベースの読み書き用のプログラムは、VB.NETを使用して開発する。 前提条件として 一応、Windows2000 SP3以降で動作することになっていますが、いくつかのコンポーネントについてはWindows2003でしか動かないものがあります(経験上)ので、できればWindows2003サーバーを用意した方がいいです。 補足をお願いしたいのですが、 利用者は何人くらいで、インターフェースはWEBブラウザですか?Outlook,EXCEL,ACCESS等のクライアントでしょうか? また、4.の頻度はどれくらいありますか? 1日何回くらい? ACCESSでもパフォーマンス的には問題ないでしょうが、排他制御が必要なら必然的にSQLサーバーとかORACLEになるかなと思います。ORACLEはないんでしょうから、SQLサーバーですね。

tatsu99
質問者

お礼

回答ありがとうございました。 >利用者は何人くらいで、インターフェースはWEBブラウザですか? 現在は、システム管理者がコマンドを実行して行います。従って利用者は1人です。但し、将来的には、WEBブラウザによる参照も可能にすることを考えています。 >Outlook,EXCEL,ACCESS等のクライアントでしょうか? システム管理者が利用者ですので、「いいえ」になります。 >また、4.の頻度はどれくらいありますか? 1日何回くらい? 現時点では、1月に1回、バッチ形式で、全顧客分のデータを印刷します。但し、将来的にWEBブラウザで照会を可能にした場合は、照会の都度ということになりますが、それほど頻度は高くないと想定しています。 >いくつかのコンポーネントについてはWindows2003でしか動かないものがあります(経験上)ので、できればWindows2003サーバーを用意した方がいいです。 貴重な情報をありがとうございました。(windows2000は誤りでwindows2000サーバーでした。)windows2000サーバーは、決定事項なので変えることは出来ませんが、このことを頭にいれておきます。