0

私のストアド プロシージャでは、対応するストアド プロシージャを使用して特定のテーブルにレコードを挿入する必要があります。このプロシージャは、結果として膨大な数のフィールドを返しますが、ストアド プロシージャから必要なのは、カラム化された [Id] の内容だけです。

したがって、予想されるすべての地獄のフィールドを複製する一時テーブルまたはテーブル変数を作成し、それにプロシージャの結果を挿入する必要なく、ストアドプロシージャからこの情報を抽出する方法があるとしたら? ここでは、次のことを意味します。

DECLARE @Reciever Table (field1 INT, Field2 varchar(255), ..., fieldn DateTime, ... fieldX float)
INSERT INTO @Reciever
EXEC ProcThatInserts @param1, @param2

ストアド プロシージャ出力の構造をテーブル変数にレプリケートせずに同じことを行うにはどうすればよいですか? ありがとう!

PS「ProcThatInserts」は、異なるテーブルにいくつかの挿入を行います。独自の挿入を作成できるいくつかの挿入アクティブな挿入トリガー

4

1 に答える 1

0

挿入された行のIDを返す必要があるように聞こえると思います。その場合、出力をidentiyフィールドに指定できるはずです。これを行う方法の詳細が記載されたSOの投稿は次のとおりです... SQL Server - INSERT後の戻り値

于 2013-06-11T10:13:59.987 に答える