CURSOR Kullanımı

–tablo oluşturalım.

IF OBJECT_ID(‘[dbo].[Hesap]’) IS NOT NULL DROP TABLE [dbo].[Hesap]

CREATE TABLE [dbo].[Hesap](CREATE TABLE [dbo].[Hesap]( [id] [int] IDENTITY(1,1) NOT NULL, [Deger] [int] NULL, [Deger2] [int] NULL  )

–Değerleri insert edelim.

INSERT INTO [dbo].[Hesap] (Deger) VALUES (10)
INSERT INTO [dbo].[Hesap] (Deger) VALUES (20)
INSERT INTO [dbo].[Hesap] (Deger) VALUES (30)
INSERT INTO [dbo].[Hesap] (Deger) VALUES (40)
INSERT INTO [dbo].[Hesap] (Deger) VALUES (50)

— Değişkenler tanımlanır

DECLARE @id INT = 0
DECLARE @deger INT = 0
DECLARE @Diger2 INT = 0

–Cursor tanımlanır, hangi sorguda çalışacağı belirlenir

DECLARE Deger2_Olustur CURSOR FOR

SELECT id,Deger FROM [dbo].[Hesap] ORDER BY id

–Cursor açılır

OPEN Deger2_Olustur

–Her yeni değer atanır

FETCH NEXT FROM Deger2_Olustur INTO @id,@deger

WHILE @@FETCH_STATUS =0

BEGIN

SELECT @deger = Deger from [dbo].[Hesap] WHERE id=@id

UPDATE hUPDATE h SET H.Deger2=@deger FROM Hesap AS h WHERE id=@id

FETCH NEXT FROM Deger2_Olustur INTO @id,@deger

END

CLOSE Deger2_Olustur

–Bellekten silinir

DEALLOCATE Deger2_Olustur

–Sonuç:

Cursor

Reklamlar

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s