• ベストアンサー

accessとSQLserverの違い

こんちは。 DBについて教えて下さい。 社内システムをActiveServerPagesで構築しようと思うのですが、DBについて教えて下さい。 ACCESSについては多少知っているのでACCESSをDBとして構築したいのですが、ちゃんとしたシステムの場合はSQLserverやOracleのほうが良いと言われました。 何がそんなに違うのでしょう?レスポンス? データ件数は20,000件くらいです。

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

  • ベストアンサー
回答No.2

問題は同時にどのくらいの人数がアクセスする必要があるか、データベースがどのくらいのサイズになるか、といった点でしょう。 ユーザー数がそれほど多くない(同時アクセスが5以下でデータサイズが2GB以下)のであれば、MSDE(SQL Serverを使ったデスクトップエンジン、Accessのライセンスがあればライセンス上使えます。AccessやOffice ProなどのMSSQLフォルダに入っているはず)を使うという手もあります。データベースのサイズが大きくなったらSQL Serverに切り替えることもできます。

その他の回答 (2)

  • mfuku
  • ベストアンサー率50% (173/345)
回答No.3

#1の者です。 > ACCESSでデータ件数が多くなればとは、大体の目安としてはどのくらいになるのでしょうか? こればかりは残念ながら一概には言えません。 結局は「検索が遅すぎるので乗り換え時だ」と実感で判断するしかないと思います。 単独のテーブルで検索項目にインデックスが設定してあるとすれば20,000件ならまだ実用に耐えうるレスポンスであるかと思いますが、他のテーブルとのリレーションや検索条件の複雑性などにより、20,000件であっても耐え難いほどパフォーマンスは劣化しているかもしれません。 いずれにせよ、20,000件であるなら、乗り換えを検討すべき時でもあります。 しかし、重視すべきはレスポンスなどのパフォーマンスよりメンテナンス性や同時更新などの整合性です。 #2の方もおっしゃってますが、ACCESS2000以降でしたらMSDEが使えます。 これは、内部的にはSQL-Serverと同じ構造になってます。 移行も簡単ですので是非とも乗り換えをお勧めします。

  • mfuku
  • ベストアンサー率50% (173/345)
回答No.1

ACCESSのJetデータベースエンジンは、基本的には個人用のデータベースとして設計されてます。 一方、SQL-ServerやOracleはRDBMSとして、複数ユーザーからのアクセスに対応する形で設計されてます。 そのため、SQL-ServerやOracleのようなRDBMSでは以下の点が異なります。 ■ACCESSはデータ件数が多くなればレスポンスが極端に悪くなるが、RDBMSでは正しくチューニングすれば殆ど問題がない。 ■ACCESSでは複数ユーザーが同時更新した場合、稀にMDBが破壊されてしまうことがあるが、RDBMSではそれはあり得ない。 ■仮に人為的なミスでデータを破壊したとしても、RDBMSではバックアップなどの機能が充実しているため、事前の対策があれば、どうにでも対処できる。 ■RDBMSでは、セキュリティが強固である。 等です。 他にも色々なメリットがあります。 つまり、ACCESSはあくまでも個人用の簡易的なデータベースであるのに対し、RDBMSは企業の情報システムで使用されることに十分に耐えうるように設計されたデータベースであることによる様々な違いです。

superstar
質問者

補足

非常に分かり易い説明ありがとうございました。 ACCESSでデータ件数が多くなればとは、大体の目安としてはどのくらいになるのでしょうか?