• ベストアンサー

Visual Studio2005で使うデータベースについて

初めて投稿します。 初心者なのでアドバイスをお願いします。 数日後に、Visual Studio2005 Professional Edition を使ってソフト開発をする予定です。 今までExcelのVBAなどで簡単なソフトを作ったことはあります。 参考書を色々購入して見ていたのですが、「データベース」という言葉にぶちあたり、今まで無関係に過ごしてきたので困惑しています…。 手持ちの参考書にはAccessを使っての例が載っていたので、参考にしようと思ったのですが上司に相談すると、Accessを使うと配布先にもAccessがないと開発したソフトが使えないのでは?と言われました。 Visual Studio2005を見ると、「ウィズMSDNプロフェッショナル サブリクション」とあります。自分なりに調べるとこれもデータベース?のようです。 普通、Visual Studio2005でソフト開発を行う場合は、データベースは何を使うのが一般的なのでしょうか? あと、おすすめ参考書などありましたら教えてください。今、手元にある参考書は「Visual Studio2005による実践 データベースプログラミング」谷尻かおり著という本です。参考にしようと思って買って中を見たらAccessの例だったのに上司にAccessは…と言われちょっとショックです。愚痴になってしまいました、すみません。 長文ですみませんがよろしくお願いします。

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

  • ベストアンサー
  • SUPER-NEO
  • ベストアンサー率38% (706/1857)
回答No.3

#2です。 Accessのデータベースは、いわゆるスタンドアロン向け、 と考えてください。複数ユーザーで一度にアクセスする場合に、 排他などの様々な問題が生じたりします。 構想中のシステムがどのような形態であるかはわかりませんが、 もし、複数のユーザーがいる場合などは、Accessは選択肢に入れない ことをおススメします。私的には、MySQLがなかなか使い勝手が いい感じがします。SQLのパフォーマンスも非常によく、 基本的な操作だけであれば、十分に満足できるかと思います。 より高度なことをやろうとすると、やはりOracleやSQL Serverといった 本格的なデータベースを導入すると良いでしょう。

toma-to
質問者

お礼

再度の回答ありがとうございます。 給与に結びつく基幹業務ソフトを作ろうと思っているのですが、現在はお一人ですべて手書き(!)でこなしておられて大変だというので、ソフト開発となりました。発注元のユーザー様と再度、運用の仕方について話し合ってみます。排他のほうが良いと申されるかもしれません。将来の展望を考えると、拡張の可能性も考えてお教え頂いた「MySQL」やOracle、SQL Serverのほうが良い気がします。 とても参考になりました。本当にありがとうございました。

その他の回答 (3)

  • Yeti21
  • ベストアンサー率47% (396/830)
回答No.4

SQLサーバも色々バージョンが有りますが、2005は現行バージョンですね。 開発用の簡易版もあります。 参考URLを参照してみてください。 商用DBでは、SQLサーバとOracleがシェアのほとんどを占めていると思います。 サーバでDBが稼動して、クライアントから色々な方法でアクセスするのが クライアントサーバ型のシステムです。 そうではなく、ローカルのみのスタンドアローンならMDBなどを使用しても良いと思います。 DBアクセスの方法も色々あります。

参考URL:
http://www.microsoft.com/japan/sql/default.mspx
toma-to
質問者

お礼

再質問への回答ありがとうございます。 参考URLを見に行ってきました。とても良さそうなのでできれば2005で運用したいと個人的には思うようになりました。発注元の人と再度話し合い、詰めていきたいと思います。 この度は丁寧な回答をいただきましてありがとうございました。

  • SUPER-NEO
  • ベストアンサー率38% (706/1857)
回答No.2

> Accessを使うと配布先にもAccessがないと開発したソフトが使えないのでは? ADO.NET を使えば、プログラムでAccessのデータベースは構築できますし、 また読み書きもできます。特にAccessが入っていなければいけない、 ということはありません。 また、データベースについては大規模なシステムであれば、 Accessなどのデータベースは推奨しません。 MySQLやOracleといったデータベースを利用するのが良いでしょう。 このときOracleを動かすには当然、Oracleクライアントがなければ いけないわけですが、それを実行する端末に個々に入れていては、 .NET Frameworkのアプリケーションとしては望ましいとはいえません。 そこで、ASP.NETのWebサービスを利用した検索などを実践されてみてはどうか、 と思います。データベースの読み書き等はサーバが行なう、というスタンスです。

toma-to
質問者

お礼

ADO.NETを使うと良いのですね! 参考書の後半に、同じ言葉を見つけたので読んでみます。 大規模システムにはAccessは向かない、と何かで聞いたことがあります。現在は小さなシステム構想中ですが、拡張の可能性があるので、考えどころです。 MySQLとOracle、ASP.NETのWebサービスについて勉強してみます。 丁寧な回答をいただきましてありがとうございました。 とても為になりました。

  • Yeti21
  • ベストアンサー率47% (396/830)
回答No.1

MDBを使用してAccessのRuntime付きで配布したりすることも有ります。 (これでAccessが入っていなくても使えます) ローカルだけで使用するならそういうのも有りですね。 クラサバならはSQLサーバとかOracleとかがメジャーですが。

toma-to
質問者

お礼

回答ありがとうございます。 私のパソコンに、マイクロソフトSQLサーバー2005というのがあります。 >クラサバならはSQLサーバとかOracleとかがメジャーですが。 とあるのは、マイクロソフトSQLサーバー2005を使うという意味でしょうか?回答にまた質問してすみません。お時間がありましたらお教えください。

関連するQ&A

専門家に質問してみよう