Blog Home  Yalcomania'n�n Yeri Feed your aggregator (RSS 2.0)  
Yalçın Uzun - Bir SQL Cursor Alternatifi : Temp Tablolar
Kişisel Blog
 
 Thursday, July 31, 2008

--Dolaşılacak tabloyla ilgili bilgileri atmak için önce bir temp tablo oluşturulur.

CREATE TABLE #OgrencilerTemp

(

KayitNo int IDENTITY(1, 1),

OgrenciID int

)

--İlgili bilgiler temp tabloya insert select yardımıyla atılır.

INSERT INTO #OgrencilerTemp

SELECT OgrenciID

FROM Ogrenciler

--Koyatıları dönmek için kullanılacak değişkenler

declare @KayitSayisi int

declare @KayitNo int

--Başlangıç verileri set edilir.

SET @KayitSayisi = @@ROWCOUNT

SET @KayitNo = 1

--Kullanılacak bilgiler değişkenlere aktarılır.

--Örnekte sadece 1 tane kullandım.

declare @OgrenciID int

--Tek tek kayıtlar dönmeye başlanır

WHILE @KayitNo <= @KayitSayisi

BEGIN

--İlgili veriler değişlenlere aktarılır

select @OgrenciID=OgrenciID from #OgrencilerTemp where KayitNo=@KayitNo

--Bilgi nerede kullanılacaksa kullanılır.

exec spBirseylerYap @KayitNo

--Sayac'ı 1 arttırır.

Set @KayitNo=@KayitNo+1

END

--Temp tablo silinir.

DROP TABLE #OgrencilerTemp

Thursday, July 31, 2008 4:42:08 PM (GTB Standard Time, UTC+02:00)  #    Comments [0]    | 
Copyright © 2009 Yalçın Uzun