Bir tablodan başka bir tabloya kayıt eklemek

  • 08.04.2011 16:51
  • SQL
  • 7704

Bu makalede bir tabloda bulunan kayitlarin baska bir tabloya tek bir stored procedure yazarak eklenmesi anlatilmaktadir. Ancak buradaki asil amaç kaynak tabloda bulunup, hedef tabloda olmayan kayitlari kaydetmektir. Bunu da Where kistasina yazdigimiz yerde belirtiyoruz. Sorguyu incelediginiz zaman nasil çalistigini anlayabilirsiniz.

Kodun islevi ise söyle. Önce "Where" satirinda, kayit ekleyecegimiz tablodaki verileri getiriyoruz. Daha sonra asil kayitlari çekecegimiz tablodan verileri çagiriyoruz. En alt satirda "not StokId in" bölümünde ise insert islemi yaparken hedef tabloda bulunmayan kayitlarin kaydedilmesini sagliyoruz.

Create Procedure TablolariSenkronizeEt

As

Begin

      Insert into tblUrunN

      (

            fldnStokId,

            fldDurum

      )    

      Select      nStokID, 1

      From  tblMuhasebeUrunler.dbo.tbStok MU

      Where not nStokID in (Select UU.fldnStokId From tblUygulamaUrun UU)   

End

 

Siz de düşüncelerinizi yazabilirsiniz:

;