2016-06-01 9 views
1

私はいくつかのサーバーを複製しています。プライマリサーバでアプリを使用し、特定の状況下でのみSecondaryサーバを使用するようにしたいと考えています。PostOpen dbスクリプトイベントとは別のサーバーでデータベースを開くことはできますか?

データベーススクリプトのPostOpenイベントに、アプリケーションが開いているサーバーを確認するコードを追加しました。彼らが正しいサーバーにいない場合、間違ったサーバー上にいることを伝え、続行するかどうかを尋ねるプロンプトが表示されます。

2番目のサーバーで続行しないように「いいえ」を選択した場合は、このデータベースを閉じてプライマリサーバーで開くことをお勧めします。

私はUI Workspace OpenDatabaseを使用しようとしましたが、実際には機能しませんでした。それはできないと思われますが、これを行う方法がある場合にのみ尋ねると思いました。

おかげ クレム

+0

サーバーはクラスタ化されていますか? –

答えて

1

私はあなたが何をしたいかを達成するために鉱山(ストリップダウン)のアプリケーションで実行されている次のコードを持っている:

strServer = "YourMasterServer" 
strFilePath = Source.Database.Filepath 

Call Source.Close() 
Call ws.Opendatabase(strServer, strFilePath) 

コードがPostOpen-イベントでありますのデータベース。

+0

こんにちはTorsten、私はそれをやってみましたが、うまくいきませんでした。プライマリサーバではなく第2サーバでデータベースを開きます。 clem – Clem

+0

あなたは何か間違っていました...確かに、 "strServer"に適切なサーバーを選択しましたか? –

+0

これはループを引き起こしませんか?つまり、ユーザーはYourMasterServerでPostOpenの火災を開始します。コードがウィンドウを閉じ、YourMasterServerのデータベースを開きます。 PostOpenが発生します。コードがウィンドウを閉じるなど... –

関連する問題