SQL Server’da Cursor Kullanarak Delete İşlemi Yapmak
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.