MS AccessとMS SQL Server


10

これらは、Microsoftの2つの製品、MS AccessとMS SQL Serverです。

Accessはどのようなタイプのユーザー/用途を対象としていますか?(ユーザー数の観点からの)使用の程度は別として、これら2つの製品は同じですか?

回答:


5

MS Accessは、実際には高速開発UIツールとファイルシステムベースのリレーショナルデータベース(JET)の組み合わせです。

長所:
-簡単な導入。ファイルをネットワークにコピーして、そのパスを人々に伝えます。-データベースタイプのアプリケーション向けのラピッドプロトタイピングおよび非常に優れたUI開発ツール-特に小規模なインストールの場合、一般的に導入コストが大幅に安くなります。

短所 -メンテナンス-DBの圧縮、修復、その他のメンテナンスを行う場合は、すべてのユーザーをロックアウトする必要があります。-ファイルベースのDBを使用した結果、多数のユーザーや不安定なネットワーク接続でデータが破損しやすくなります。-数については議論されていますが、SQLを使用するよりもはるかに早く、単一のAccess DBでサポートできるユーザーの数を最大化します。

MS SQL Serverはクライアントサーバーリレーショナルデータベースシステムであり、UI開発ツールは組み込まれていません。

長所:
-メンテナンス-メンテナンスのためのツールがたくさんあり、DBのユーザーでほとんどのことができます。したがって、稼働時間が長くなります。
-エンタープライズスケール-より多くのユーザーをサポートするように設計されており、より適切にスケールしてユーザーを処理できます。

短所: -高価-5ユーザーアプリで数十万のアイテムを追跡するには、やり過ぎになる可能性があります。
-より複雑-すべての追加機能により、学習曲線が導入されます。-組み込みのUI開発ツールはありません-フロントエンドと(おそらく)レポートを作成するには、別の開発プラットフォームが必要です。実際、AccessはSQLのフロントエンドとして機能しますが、DBAはさまざまな理由から、データベースに接続するAccessユーザーを嫌う傾向があります。

その他
-聞こえるかもしれませんが、DBのサイズに基づいて決定するのではなく、機能とユーザーベースのサイズに基づいて電話をかけてください。
-Accessは、実際にはSQL Serverでホストされているデータベースに非常に優れたUIツールです。したがって、ニーズに応じて、正しい答えは「両方」になります。


2
SQL Serverのコストに関するメモ。ニーズがそれほど大きくない場合、SQL Server Expressは無料で機能する場合があります。ただし、制限があります(microsoft.com/sqlserver/2008/en/us/express.aspx)。しかし、MDBファイルが実行を継続するための毎日の修復とコンパクトの要件に達したときに、Accessからの適切なステップアップを提供します。
Agent_9191 2010

アプリの長所と短所は、アプリの配布に最悪の方法を使用している場合を除いて意味がありません。フロントエンド(フォーム/レポートなど)とバックエンド(データテーブルのみ)に分割する以外は、Accessアプリを配布する人はいません。ベストプラクティスに従うと、長所と短所が完全になくなります。
David W. Fenton

@David-多分私は不明瞭だった。簡単なデプロイとは、基本的に、アプリを別のパーティーにデプロイする方が簡単であることを意味します。つまり、SQL Serverをインストールしたり、SQL Serverのライセンスを取得したりする必要がないため、小規模なシステムですぐに立ち上がって実行したいユーザーにとっては苦痛になる可能性があります。私が言ったことは、あなたがフロントエンドまたはバックエンドにそれを吐き出さないことを暗示しているとは思いませんが、明確化に感謝します。
JohnFx 2010

4

質問はばかげています。SQL ServerとAccessは同じ種類の製品ではありません。ホテルとマックトラックの違いを尋ねるようなものです。この質問は意味がありません。

理由は、SQL Serverはデータベースエンジンのみであり、Accessはデータベースアプリケーション開発ツールだからです。SQL Serverはデータを格納するためのものであり、Accessはデータを操作するアプリケーションを構築するためのものです。

現在、AccessにはデフォルトのデータベースエンジンであるJet / ACEが同梱されています。そのため、誰もが「Access」をデータベースエンジンの意味で使用しています。それらがAccessとJet / ACEを交換可能に使用する場合、それらは間違って不正確であり、意味を指定しないと、あらゆる種類の混乱を招きます。Accessを厳密にSQL Serverと比較することはできませんが、SQL ServerをJet / ACEと比較することはできます。これは、リンゴや家具ではなくデータベースエンジンを比較するためです。

詳細には触れませんが、どのデータベースエンジンが最も適切であるかを決定することは、実行するように要求しているタスクに依存することになると言います。輸送用の車両を購入するのとよく似ています。あなたが一人で、スーパーマーケットとモールに行くのに車が必要なだけなら、ミニクーパーでうまくやります。一方、あなたが企業であり、倉庫と店の間で何百箱もの在庫を行き来する必要がある場合は、マックトラックが必要になります。

モールやスーパーに行くためだけにマックトラックを使用しようとするのは愚かなことであり、ミニクーパーを使用してビジネスの在庫を輸送しようとするのも同様に愚かなことです。どちらも可能ですが、非常に不便です。

したがって、データベースエンジンを使用する目的を決定し、目的に最も適したデータベースエンジンを選択する必要があります。Jet / ACEが十分であり、物事を非常に簡単にするシナリオはたくさんあります。

それから始めるのが賢明でないシナリオもたくさんあり、SQL Serverのようなサーバーデータベースエンジンを使用する必要があります。Jet / ACEは多くのシナリオでは不十分であり、SQL Serverは他のシナリオにとっては過剰なものとなりますが、特定のシナリオの特定の要件を検討するまで、どれがどれであるかはわかりません。

最後に、Accessは、Jet / ACEデータベースを背後に配置するか、SQL Serverデータベースを使用して、フロントエンドアプリケーションを構築するための優れたツールです。実際、効率的なAccessアプリケーションを慎重に作成した場合、Jet / ACEからSQL Serverへのアップサイズは非常に簡単です。これは非常に一般的なシナリオです。つまり、AccessフロントエンドとJet / ACEバックエンドから始めます。ニーズが拡大するにつれて、サーバーのバックエンドにアップサイズし、既存のAccessアプリケーションを維持します。


3

アクセスはすべて込みのパッケージであるため、エンドユーザー向けです。それは主に一度に1つの使用のためですが、不格好な回り道の方法ではありますが、複数のユーザーをサポートします。覚えておいてください、それはMS Officeのツールです。

MS SQL Serverは実際のSQLデータベースです。それはあなたがそれの上に置きたいと思うどんなフロントエンドのためのデータベースとしての役割もするサーバーの上に座るように設計されています。これは主に複数のユーザー向けであり、一元化されることを目的としています。


「実際のSQLデータベース」?そこには漠然とした用語のようなものがあります。次の説明では、「クライアントサーバーデータベースプラットフォーム」を意味していると思います
JohnFx 2010

2

Force Flowによる回答に加えて、それらは異なるツールと異なるUIも提供します。

Accessには、テーブルの作成、ウィザードを使用したクエリの生成、ウィザードを使用したレポートの作成、マクロの作成などの方法があります。圧縮やその他のメンテナンスツールが組み込まれています。それはオールインワンの小さなデータベースです。

SQL Serverは、より多くの機能を備えており、手で持つことは少なくなっています。適切に使用するには、データベースとSQLを理解している必要があり、適切なメンテナンスが必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.