MSSQL eklenen kaydın ID değerini döndürme

  • 10.09.2015
  • M.Tayyip Yetiş
  • MSSQL

Merhaba, benim önceden sıklıkla karşılaştığım bir problem için yakın zamanda çok pratik bir çözüm buldum. Örneğin bir e-ticaret siteniz var ve bir ürün tablosuna bir ürün ekleyeceksiniz aynı zamanda bu ürün için stok tablosuna stok girişi yapacaksınız bunun için çok çeşitli yollar var örneğin insert trigger ile bunu kolaylıkla çözebilirsiniz fakat bir problemin ne kadar çok çözüm yolu bilinirse o kadar iyidir. alternatif bir çözüm;

Aşağıdaki gibi bir sql sorgusu ile ekleme işlemi yaptığınızda ExecuteScalar fonksiyonunu kullanarak geriye eklenen verinin istediğiniz bir sütununun değerini döndürebilirsiniz ki bu genelde ID sütunu olur.

DECLARE @TmpTablo table(ID int);
INSERT urunler (ID, marka, model, fiyat, renk)
OUTPUT INSERTED.ID INTO @TmpTablo VALUES (178, 'casper', 'nirvana', 1500, 'siyah');
SELECT * FROM @TmpTablo;

Yorum Yap