2

私はこのようなものを探しています。構文は間違っていますが、原理を示しています

foreach(int i in myIntArray)
{

execute mystoredProc i;//this should kick off the proc and go onto next one without waiting for a return value

}

これらのストアド プロシージャは、Windows アプリケーションから呼び出されます。私は、アプリケーションの最後に多数のスレッドを作成することに少し懐疑的です。むしろ、SQL サーバー側でスレッド化を行います。私は SSIS を使用することにオープンです。

4

1 に答える 1

1

求めていることを直接行うことはできません。

できることは、nスレッドを起動してから、各スレッドが独自の接続を開き、各接続が独自のSQLクエリを実行することです。その後、各スレッドはクエリが返されるのを待ちます。これを1つのスレッドだけで行うことはできません。

これは、T-SQL内でネイティブに実行できないことも意味します。

複数のスレッドを起動するCLRルーチンを作成し、上記のプロセスを繰り返すことができます。したがって、T-SQLがCLRコードを呼び出すことができるようにすると、CLRは同時実行の問題に対処します。

しかし、これの標準的な方法は、実際には複数のクライアント側スレッドを持つことです。

于 2012-05-17T22:10:55.093 に答える