私は次のクエリを持っている:更新テーブルの行
INSERT INTO dbo.Products
(Code ,
ProducerCode ,
CustomerId ,
EanCode ,
ChangedDateTime ,
ChangedById ,
Deleted
)
SELECT Code ,
ProducerCode ,
CustomerId ,
EanCode ,
GETDATE(),
GETDATE(),
0
FROM dbo.BulkProducts
WHERE ProductId is NULL AND BulkProducts.BulkId = @BulkId
Products
テーブルインサート上に自動的に割り当てられIDENTITY ID
カラムを有します。私が達成したいのは、Products
に挿入した後に、BulkProducts
という行の製品のID
が割り当てられていることです。 @@IDENTITY
、IDENT_CURRENT
、SCOPE_IDENTITY
について少し読んだことがありますが、私の例ではうまくいかないようです。どんな助けもありがたい。私はこのように、あなたがOutput
句を使用してそれを達成することができますSQL Serverのに2012
selectが2つ以上の行を返すと仮定すると、最近挿入されたレコードIDを取得するには、insert文にoutput句を追加する必要があります。 –
構文についての簡単な例を共有しますか? –
明確な例がMSDNのリファレンスで提供されています。これを見て、それが役立つかどうかを見てください。 https://msdn.microsoft.com/en-us/library/ms187342.aspx –