Herkese merhaba,

Bu yazıda sizlere SQL Server’da cursor kullanarak delete işleminin nasıl yapılacağından bahsedeceğim. Örnek işlemi Northwind veritabanı kullanarak yaptık. Kodları aşağıda görmektesiniz.

--Değişken tanımlama işlemi
DECLARE @UrunID INT

--Değişkene değer atama işlemi. Ürün id'si bir olanları sileceğiz.
SET @UrunID = 1

--Cursor tanımlama işlemi. Cursor ürünid üzerinde dönüyor.
DECLARE crs CURSOR
FOR
    SELECT  ProductID
    FROM    dbo.[Order Details]
	WHERE ProductID=@UrunID

--Cursor açılıyor.
OPEN crs

FETCH NEXT FROM crs INTO @UrunID
WHILE @@FETCH_STATUS = 0
    BEGIN
	    --Silme işlemini yapıyoruz.
        DELETE  FROM dbo.[Order Details]
        WHERE CURRENT OF crs
        FETCH NEXT FROM crs INTO @UrunID

    END
--Cursor'u kapatıyoruz.
CLOSE crs
--Curosr'u öldürüyoruz.
DEALLOCATE crs

Yukarıdaki işlemde ürünler tablosunda ürün id’si bire eşit olanları silme işlemi yaptık. Bu tarz işlemlerde cursor kullanımı oldukça pratik olacaktır.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

627 Kez Okundu

Kategoriler: