Hazırladığımız uygulamalarda, MsSql ‘de insert edilen verinin kayıt ID’si bazen hemen gerekmektedir. Bu ID aynı sorgu (insert query) içinde veya insert sorgusunun ardından gelecek ikinci bir sorgu ile de alınabilir.

C# üzerinden örneklendirelim:

//Baglantimizi aciyoruz.

SqlConnection cn = new SqlConnection("ConnectionString");

cn.Open();

//sqlcommandımız oluşuyor ancak query sonuna SELECT INSERT_ID = @@Identity; 
//ekleniyor.. Bu aynı sorguda alma yöntemidir. Eğer ikinci bir sorgu kullanacaksanız,
//bu deyimi aynen ikinci sorgu olarak göndermeniz gerekiyor.

SqlCommand com1 = new SqlCommand("insert into table1 (field1,field2) values 
(value1,value2);SELECT INSERT_ID = @@Identity;",cn);

string insert_id=com1.ExecuteScalar().ToString();

//insert_id 'yi istediğiniz gibi kullanabilirsiniz. Dilerseniz Int32 'ye çevirip 
//dilerseniz direkt string olarak ikinci bir sorgunuzda kullanilabilir.

//Baglantiyi kapatiyoruz
cn.Close();

Kolay gelsin..

Kategoriler: CSharp