2

私のuniプロジェクトでは、MySQLデータベースを使用するC#プログラムを作成しました。今それを見ると、MySQLを選択することは最善の解決策ではなかったと思います...少なくともユーザーの観点からは..はい、このプログラムの実際のユーザーがいるでしょう(私にとっては急いでください!)、しかしインストールプロセスはユーザーはすべての依存関係(C ++ランタイム、.net環境、MySQL、ODBCコネクター、MySQL、およびデータベース)をインストールする必要があるため、少し問題があります。私は小さなマニュアルを作成しましたが、もっと簡単なものを提示したいと思います。自動インストーラーを見つけましたが、ファイルをコピーするだけでした。iExpress.exeは単一のファイルしか実行しないようです...それでも、MySQLワークベンチでmwbを開かずにデータベースをインストールする問題があります(データベースに転送エンジニアリングするために実際に使用される.sqlファイルがどこかにあります) 。道案内をお願いします。

編集:私はVSでセットアップパッケージを作成することをいじり始めましたhttp://support.microsoft.com/kb/307353私はそこで注文をセットアップすることができないと思いますが、それでもデータベースインストールの問題を解決しません

EDIT2:MySQLはここでは行き止まりのようです...現在のデータベースをSqlLiteまたは埋め込み可能なものに移動する簡単な方法はありますか?

4

2 に答える 2

2

上記のコメントスレッドによると:

すべてのクライアントにMySQLサーバーインスタンスを配置するのは少しやり過ぎです。このアプローチにはいくつかの問題があります。

  1. インストールと構成は悪夢になります。
  2. データベースサーバーのメンテナンスも問題になります。サーバーのバックアップ、セキュリティ、およびメンテナンスでは、DBAがクライアントにアクセスする必要があります。

組み込みソリューションを検討する必要があります。いくつかのソリューションは、SQLLite、SQL CE、さらには古き良きBerkleyDBである可能性があります。クライアントに保存されている情報が本質的にリレーショナルではなく、ACID準拠のデータベースを必要としない場合は、それをプレーンな古いテキストファイルまたはXMLファイルに保存することを検討することをお勧めします。

基本的に、切断されたレコードセットモデルで作業しています。アプリケーションが機能するためにサーバーへの接続が必要ない場合。C#では、レコードセットをXMLファイルに保存できます。たとえば、1つの中央MySQLサーバーがレコードをクライアントアプリケーションにダウンロードし、クライアントがレコードをローカルで処理できるようにする場合があります。

クライアントが作業を完了したら、(ネットワークが利用可能な場合)これらの変更をMySQLサーバーにポストバックできます。

悪いニュースは、これを行うために努力が必要になるということです。それは大規模な手直しではありませんが、同様にマイナーではありません。

于 2012-06-20T09:55:52.470 に答える
0

mysql.comからODBC用のmysqlドライバーをダウンロードし、代わりにODBC接続を使用するようにアプリケーションを構成できます。

http://dev.mysql.com/downloads/connector/

もちろん、クライアントサーバーアーキテクチャを使用しない場合は、クライアントサーバーDBMSを使用しないでください。SQLiteまたはSQLServerCEを使用する

于 2012-06-20T09:54:44.203 に答える