scope_id
を生成する必要があるストアドプロシージャを実行していますが、多くの結果セットが返されています。ストアドプロシージャの結果をクリア/リセットする方法
このコード:
INSERT INTO ..
SELECT @AddedID = SCOPE_INDENTITY()
EXEC NewSP --Returns a Scope_Identity also
私は(結果をクリアして、新鮮な開始)これを実現するにはどうすればよい:
INSERT INTO..
SELECT @AddedID = SCOPE_INDENTITY()
EXEC NewSP --Returns a Scope_Identity also
CLEAR_ALL_RESULTS -- Need to be able to clear all the results here
SELECT @AddedID as AddedID --Only return this results now after clearing all prior
カント」出力パラメータを使用して動作しますか? – gsharp
私は、アプリケーションでspを実行すると、@ AddIDの代わりに "NewSP"からscope_idを返します。私はこのSPを対象にして、NewSP Scope_idの代わりにAddedIDを返す方法がわかりません。 –
@ZeeTee - The '@@ IDENTITY'ではなく' SCOPE_IDENTITY'を使うことの利点は、子スコープによって変更されないことです。ストアドプロシージャが破棄したい結果セットを返すと言っていますか?もしそうなら、そのストアドプロシージャ定義を変更できますか? –