Windows用のシンプルなデータベースアプリケーション
-
02-07-2019 - |
質問
Windows 用のシンプルなシングル ユーザー データベース アプリケーションを構築する必要があります。主な要件は、Windows のバージョンとインストールされているソフトウェアに依存しないことです。どのようなテクノロジー (言語/フレームワーク) をお勧めしますか?私の好みの言語は Visual Basic です。
編集:VB.Net と SQL Server Compact Edition についてはどうですか?
解決
私がお勧めします スクライト. 。それは完全に自己完結型であり、 パブリックドメイン したがって、ライセンスの問題はまったくありません。
他のヒント
シングルユーザーですか、それともマルチユーザーですか?
単一ユーザーの場合、答えは次のようになります。 SQLite
マルチユーザー (またはマルチスレッド) の場合は、試してください。 MySQL または PostgreSQL.
あなたの要件は Windows ベースのアプリケーションであるため、無料ツールである SQL Server 2005 Express Edition を使用することをお勧めしますが、いくつかの小さな制限があります。有料版を使用すると、より大きなバージョンにアップグレードできます。
SQL Lite や FireBird などの他の DB エンジンもありますが、提供されるサポートと拡張オプションが十分である場合は、それらを選択してください。
さらに、Visual Basic は存続します。現在、Windows ベースのプラットフォームとしては VB.NET の方が優れている可能性があります。最初はより良いプラットフォームや機能が提供されるでしょうし、プロジェクトに携わっている人材をさらに拡大したい場合、死語を使いたいプログラマーよりも .NET の人材の方が利用できるのではないかと思います。
の複製 .NET での迅速な組み込み DB にはどのようなオプションがありますか?
そこから私の答えを繰り返します。
「または、Windows のすべてのコピーに存在する組み込みデータベースである Esent もあります。ここでそれについて読んでください: http://ayende.com/Blog/archive/2008/12/23/hidden-windows-gems-extensible-storage-engine.aspx" そして http://www.codeplex.com/ManatedEsent
SQLite はローカル デスクトップ アプリケーションで動作します。複数のユーザー、数ギガのデータ、複数の接続が必要な場合は、mysql または Firebird を使用します。
FireBird SQL サーバーは選択のものになります。従来のデータベースと同様に、組み込みモードとマルチユーザー モードの両方で使用できます。SQL 標準の多くが実装されており、強力なコミュニティ ベースがあります。Windows、Linux、Solaris、OS X、HP-UX で利用可能です
前述したように、SQLite は優れたシングルユーザー データベースです。 このページには VB/SQLite のサンプルが含まれています. 。SQLite は外部キー制約を解析しますが、強制しないことが懸念されます。使用できます このコードは「外部キートリガー」を生成します。 これにより、FK 制約を備えた使いやすいデータベースが得られます。
ただし、データベースのニーズがどれほど厳しいかによっては、MS Access を検討することをお勧めします。
SQL Server Compact Edition を使用しました。スクライトのようなものです。ADO.NET を使用してアクセスされる単一の SDF ファイル。Visual Basic .NET を使用してアプリケーションを開発し、Visual Studio を使用してデータベースを管理 (テーブル、列、制約などの追加) できます。
SQLite があなたが探しているものかもしれません。 http://www.sqlite.org/
アプリケーションのニーズに応じて。
使用できます SQLライト これはインストールが不要な非常に優れたデータベースです。
を使用することもできます Microsoft SQLサーバー:SQL Server コンパクト 3.5.
どちらも無料です!
あなたの投稿からは、Web アプリケーションが必要かどうかは明確ではありません。
Web アプリケーションの場合、MySQL は Windows プラットフォーム上で効果的に動作します。また、PHP、Ruby on Rails、Django、.Net など、開発環境のオプションもほぼ無限にあります。
デスクトップ アプリケーションを検討している場合は、MS Access が適している可能性があります。単純なアプリケーションでは信じられないほど簡単です。
まあ、未経験だったとしても…
何らかの種類の永続ストレージ (データベースなど) とクライアントが必要です。ストレージには、ほとんど何でも使用できます。たとえば、MS Access で DB を作成し、ADO を使用してアクセスすることで、それをファイルとして配布することができます。その他のオプションとしては、MS SQL Express エディション (一部のマシンにプリインストールされているか、無料でインストールできる) や、次のような多くのオープン ソース データベースがあります。 SQLite
クライアント側では、VBScript と ADO (OLE DB ドライバーを使用) を使用すれば問題ありません。これらは暗黒時代以来、すべての Windows インストールに付属しており、オンラインには参考資料、チュートリアル、回答がたくさんあります。欠点:UI はないので、コマンド ライン インターフェイス (「単純な」アプリケーション用) を構築する必要があります。
UI を構築したい場合は、.NET WinForms を使用することをお勧めします。オーバーヘッドは大幅に大きくなりますが、.NET はすべての XP/Vista マシンにインストールされており、そうでない場合でも、いつでもアプリケーションと一緒にフレームワークをインストールできます。
他の PC に簡単に移動できるアプリケーションを構築したい場合は、使いやすく、インストールする必要のない小さなデータベースである Microsoft Access をお勧めします。アドレス帳やミニクラッド システムなどのアプリケーションに適しています。
ただし、エンタープライズデータベースシステムを開発したい場合は、次を使用する必要があります。 MySQL その代わり。
「独立フォーム[...]インストールされたソフトウェア」の意味がわかりません。少なくとも DBMS と 1 つのクライアントまたはユーザー インターフェイスがインストールされている必要があります。
MS Access を使用することをお勧めします。シンプルなシングルユーザータスクやラピッドプロトタイピング開発には簡単かつ低コストです。DB を作成するには、開発バージョン (「通常の」Access) のみを購入する必要があります。Access 2007 のランタイム バージョンは、作成したデータベースのみを使用するために Microsoft ホームページから無料でダウンロードできます。
また、DBMS と GUI フロントエンドを同じツールに組み合わせています。
あえて MS Access について言及しましょうか?
小さなフットプリント (最大数 MB) と簡単な導入 (エンドユーザーはアプリケーションを動作させるためにのみインストールする必要があります) を探している場合、オプションは SQLite と Firebird 埋め込みです。
この 2 つのうち、私はいつでも Firebird を選ぶでしょう。SQL が完全にサポートされ (たとえば、SQLite では列を削除できません)、ACID 準拠であり、変更を加えずにクライアント/サーバーに移行できる (単なる変更なし) ためです。複数のユーザーが同じデータベースで作業できるようにする場合は、接続文字列を組み込みからサーバーに変更します)。
開発にフルサーバーを使用できることは言うまでもありません (つまり、アプリケーションとデータベース管理ツールを同時にデータベースに接続できるということです)。
私は Turbo Delphi (無料、商用利用不可) + ZeosLib (zeos.firmos.at) を使用することに成功しています。
.exe とともに配布する必要があるのは、データベース クライアント DLL だけです (クライアントをインストールする必要はありません。DLL を同じディレクトリに置くだけです)。
するだろう ケシ 仕事?
個人的な経験から「私の視覚データベース」から無料、コードなし、SQLなし、ドラッグアンドドロップだけでお勧めできます。
最良の選択肢は、次を使用して Win32 ネイティブ アプリケーションを作成することです。 デルフィ SQLLite をデータベースとして使用します。
その理由は、Delphi はマシンに他の製品をインストールしなくても、ネイティブの win32 アプリケーションを作成できるためです。