例として、テーブルAから最新の挿入IDを取得し、それを使用して別のテーブルBにレコードを入力する方法を尋ねたいだけですか?
user1800361
質問する
39 次
1 に答える
0
質問がうまくいった場合は、1つで2つのINSERT
ステートメントを実行Stored Procedure
し、最初のステートメントから生成されたIDを使用して2番目のステートメントで使用する必要があります。SCOPE_IDENTITY()
create proc yourproc
(
-- parameter definitions here
)
as
begin
insert into Employee
(FN,LN,Address)
values
(@FN,@LN,@Address)
declare @EmployeeID int
set @EmployeeID = SCOPE_IDENTITY()
insert into EmpContact
(Empid, ContactType, ContactNumber)
values
(@EmployeeID, @ContactType, @ContactNumber)
end
SCOPE_IDENTITYおよび@@IDENTITYは、現在のセッションの任意のテーブルで生成された最後のID値を返します。ただし、SCOPE_IDENTITYは、現在のスコープ内にのみ挿入された値を返します。@@IDENTITYは特定のスコープに限定されません。
于 2013-01-28T18:56:50.003 に答える