Nếu tôi có một tuyên bố chèn như:Làm cách nào để sử dụng mệnh đề OUTPUT của câu lệnh INSERT để nhận giá trị nhận dạng?
INSERT INTO MyTable
(
Name,
Address,
PhoneNo
)
VALUES
(
'Yatrix',
'1234 Address Stuff',
'1112223333'
)
Làm thế nào để tôi thiết @var INT
giá trị bản sắc hàng mới (gọi là Id
) sử dụng mệnh đề OUTPUT? Tôi đã nhìn thấy các mẫu đặt INSERTED.Name vào các biến bảng, ví dụ, nhưng tôi không thể đưa nó vào một biến không phải bảng.
Tôi đã thử OUPUT INSERTED.Id AS @var
, SET @var = INSERTED.Id
, nhưng cả hai đều không hoạt động.
Tôi biết về @@ SCOPE_IDENTITY, tôi đặc biệt muốn biết cách làm điều đó với OUPUT. Cảm ơn. – Yatrix
Bạn cần phải chèn nó vào một biến bảng sau đó chọn từ đó. Không có cú pháp nào gán trực tiếp cho biến vô hướng từ mệnh đề 'OUTPUT'. –
[Mệnh đề OUTPUT] (http://msdn.microsoft.com/en-us/library/ms177564.aspx) phải xuất thành một biến bảng hoặc bảng .. – mellamokb