2

SQL Server テーブルをアクション キューとして使用したいと考えています。そのため、テーブルが空でないときはいつでも、データベースを絶えずポーリングするのを避けるために、 VDFアプリケーションに何らかの通知が必要です。VDF は、Win 32 API の標準呼び出し規約であるstdcall、または COM/ActiveX の使用に依存しています。私にとってうまくいく別の解決策は、テーブルが空でないときに単にexeファイルを実行することです。

ここで使用できる SQL Server のイベントはありますか? そして、そのようなイベントを VDF で使用するようにチャネリングするにはどうすればよいでしょうか (上記のとおり)。

4

2 に答える 2

2

ON INSERT トリガーを使用して、行をMSMQに直接送信することができます。ここで、新しいメッセージが着信すると、アプリケーションはイベントをリッスンします。

SQL Server を使用して MSMQ にフィードする方法の例と、イベントをリッスンする方法の簡単な例を次に示します。

また、基本的にポーリングを行うだけのSQL Server Event Providerもあります。

于 2008-12-22T12:16:46.480 に答える
1

このようなイベントをVDFで使用するようにチャネリングするにはどうすればよいでしょうか。

VDFにチャネルする方法は、VDFアプリケーション内で何かを表示したいのか、VDFでプロシージャをトリガーするだけなのかによって異なります。

後者の場合は、Webアプリを使用してこの機能を提供することをお勧めします。VDF(約10を超えるバージョン)にはWeb開発が組み込まれており、必要なことを実行するためのSOAPインターフェースを提供するのは簡単です。

{ Published = True  }
{ Description = "Test the service is alive - returns 'Hello World'"  }
Function HelloWorld Returns String
    Function_Return "Hello World"
End_Function

前者の場合は、タイマーオブジェクトを使用してデータベースを数秒ごとにポーリングすることを心配する必要はありません。コードはより「dataflex」であり、パフォーマンスへの影響はごくわずかです。

ただし、MSMQ用のオープンソースVDFライブラリがあり、それは..http://www.vdf-guidance.com/ContribPage.asp?Page=PKGGENMESSAGING&ContribRecId=106にあります

最後に-データアクセスニュースグループは、ビジュアルデータフレックスのサポートを受けるのに最適な場所です。http://sture.dk/waspを使用して過去の新しいグループを検索し、news.dataaccess.comにアクセスして(選択したNNTPクライアントを使用して)質問を投稿して回答します。

于 2008-12-23T12:40:14.263 に答える