5

別のストアド プロシージャから非同期的にストアド プロシージャを呼び出すことは可能ですか?

編集:具体的には、DB2 データベースを使用しています。

4

3 に答える 3

5

エグゼクティブサマリー:はい、データベースにメッセージキューサービスがある場合。

メッセージをキューにプッシュすると、キュープロセッサはそれを非同期的に消費します。

  • Oracle:キュー
  • SQL Server:サービスブローカー
  • DB2:イベントブローカー

「純粋な」ストアドプロシージャ言語(PL / SqlまたはT-Sql)の場合、ほとんどのデータベースが持つ基本的なトランザクションモデルに対して機能するため、答えはノーです。

ただし、データベースにキューイングメカニズムがある場合は、それを使用して同じ結果を得ることができます。

于 2008-08-25T00:34:44.053 に答える
1

MS Sql Server 2005では、ServiceBrokerやCLRストアドプロシージャを試してください。TSQLに直接組み込まれているものはないと思います。

于 2008-08-25T00:35:41.523 に答える
0

Cron(またはWindowsと同等のもの)を使用して、スケジュールされたジョブをいくつか配置する必要があるようです。最初のストアドプロシージャ呼び出しを使用して、DBにある種のフラグを設定し、それをcronジョブによって定期的にチェックすることができます。2番目のジョブが実行される前に特定の遅延が必要な場合は、cronジョブによってタスクをスケジュールすることでそれを実行できるはずです。

于 2008-08-25T00:42:57.263 に答える