アクセス フロント エンドを使用して分散 DB アプリケーションを作成しています。基本的に、いくつかのフォームとレポートを含む mde です。アクセス mdb を使用してバックエンド テーブルを保持するか、MySQL またはその他のデータベースを使用する必要がありますか?
7 に答える
個人的には、SQLServerExpressまたはMySQLを使用します。これらはAccessバックエンドよりも拡張性が高く、Accessから離れる準備ができたら、フロントエンドだけでなくバックエンドも変換しなくても実行できます。
SQL Server Express は良いソリューションかもしれませんが、かなり厳しい制限もあります。また、そのライセンスがニーズに合っていることを確認する必要があります。
同時実行性とスケーラビリティのニーズが限られている場合 (たとえば、10 ~ 15 人の同時ユーザーが中程度の量の I/O を使用している場合)、MDB バックエンドを使用しても問題はありません。私は Access のファンではありませんが、これが通常うまくいくことを経験から知っています。
また、MDB バックエンドの管理はほとんど無料ですが、MySQL または SQL Server Express では実際の DBA 作業が必要になります。絶対に必要ないと合理的に確信している場合は、より大きなものを使用しても意味がありません。
実際の展開では、Access/Jet DB エンジンではなく、実際のデータベースを使用する必要があります。
そうは言っても、アクセスの素晴らしい点は、単一の MDB ファイルをデータベースとコードに分割するツール (メニューを参照) があることです。それを行ってから、コードを新しいデータ ソースに向けます。
一部のクエリを若干変更する必要がある場合があります。
SQLServerExpressが最善の選択肢だと思います。MySQLはバックエンドに適したDBですが、AccessはSQL Serv Expressとの統合が優れており(もちろん、MSは、無料であっても独自の製品を使用することを望んでいます)、Expressエディションは無料であることを考えるとかなり優れています。アプリケーションを後で大幅に拡張する必要が生じた場合、有料のSQL Serverへのアップグレードは簡単で、ドライバーは同じです。
「分散DBアプリケーション」とはどういう意味かを定義する必要があると思います。私が理解しているように、その用語は通常、Jetをバックエンドの実行から外します。
ユーザー数、運用環境、セキュリティと信頼性の要件などを示さずに、実際に質問に答えることはできません。10人のユーザー向けで、基幹業務データでない場合、Jetバックエンドは完璧であり、開発とケーキの管理。100人のユーザーがいる場合は、サーバーバックエンドを使用することをお勧めします。重要なセキュリティ上の考慮事項(HIPAAコンプライアンスなど)がある場合は、Jetではなく、サーバーレベルのセキュリティが組み込まれているデータベースを使用することをお勧めします。
しかし、Jetバックエンドが問題なく動作するアプリケーションはたくさんあります。高速で完全に信頼できます。
MySQL を選択すると、各クライアントに MySQL コネクタ (ODBC) をインストールする必要があります。追加のコンポーネントを配布したくない場合は、SQL Server Express を選択することをお勧めします。さらに、ADO は MS SQL でより適切に機能します。