2016-10-21 8 views
0

私は本当にこの の良いタイトルを考えることができませんでしたが、とにかく私は基本的にデータベースのデータのインターフェイスであるコントロールパネルのアプリケーションを構築しています。 (データベース上でスクリプトを実行します)データベースを移動するとプロジェクトが中断しますか?

私は私がプロジェクトを構築していたら、私は、しかし、(Windowsフォーム)

Accessデータベース内のデータには、この方法https://msdn.microsoft.com/en-us/library/ms171893(v=vs.140).aspx Connectを使用して、私のプロジェクトにだから細かいデータベースをリンクされていますデータベースをサーバーに移動し、コントロールパネルのアプリケーションを別のクライアントにインストールする必要があります。データベースを動かすとクライアントアプリケーションとの接続が切断されますか?はいの場合は、クライアントにデータベースに再接続する方法を教えてください。

+0

それを試してみてください.. – MickyD

答えて

3

データベースを移動するとクライアントアプリケーションとの接続が切断されますか?

もちろん、データベースの場所を他のデバイスに移動したため、アプリケーションとのデータベース接続が切断されます。そのため、アプリケーションは接続が見つからないことを検出します。

どのようにしてクライアントにデータベースに再接続させることができますか?

アプリケーションに新しい接続文字列を設定するだけです。 プロジェクトのアプリケーションパスで見つけることができます。

+0

この新しい接続文字列はどのように生成されますか?クライアントが構築されると、データベースはサーバーに移動されます。私は決してそれが移動されるサーバーや今後何回移動するかも知りませんし、単にデータベースを指す文字列が変更されるため、データベースがサーバーのexpsaleyを移動するたびにアプリケーションを再構築し続けます。これを行うにはハードコーディングされていない方法が必要です。だからA:データベースがサーバーとB:クライアントのApp内の文字列をどのように変更するのでしょうか?私はこの文字列がコード内で使われているところは見ていません。 – skyzzle

+0

これを達成するためにはさまざまな方法があります。オプション1)サーバーを含むソース接続とデータベース名を取得してデータベース接続を選択するアプリケーションを作成することもできます。オプション2)クライアントにアクセスするだけでもか、クライアントが別のサーバーに移行したことを通知することができます。接続文字列を再作成します。オプション2は、クライアントがデータベースを随時移動しないことがわかっているので、最も簡単な方法です。 – GNMercado

+0

私のクライアントを訪問してどういう意味ですか?クライアントは、データベースにアクセスするクライアント(クライアント側アプリケーション)のクライアントではありません。そして、私がやろうとしているのは、データベースがサーバーを変更したとき(そしてそれがコンピュータから逃げることができないため)である場合です。アプリケーション自体を再構築せずに、再度接続する方法を教えてください。この文字列はどこですか?どのように私はそれを生成するのですか?どのように変更したときに文字列を使用して更新するにはどうすればよいですか? – skyzzle

0

データベースへの接続文字列はapp.configファイルに格納されます。パスがexeとの相対パスであることを保証するか、データベースファイルを検索するための別のメカニズムを使用することができます。

+0

クライアントをデータベースに向ける文字列はapp.configファイルにありますので、データベースの移動時に変更する必要がありますか?それが真実ならば、データベースが動くときに新しい文字列を生成する方法を知る必要があります。 – skyzzle

関連する問題