İşlemi geri alma ROLLBACK Transaction Nedir?

Rollback, Yapılan işlemleri geri alır. Örneğin bir tablodaki verileri DELETE, UPDATE, INSERT gibi işlemler yapılırken ROLLBACK ile işlemi geri alır. Peki bu bize ne fayda sağlayacak? Bazı tablolarda Triggers bulunur DDL veri işlemi yaparken hata alınabilir bu sefer hangileri hata aldığını hangileri işlem yapıldığını ayırt etmek zor olabiliyor.

Yapılan işlemi geri alma


BEGIN TRANSACTION --İşlem bu satırdan itibaren başlangıcı bildiriyoruz.

DELETE FROM [dbo].[MUSTERI] WHERE AD LIKE '%Test' --Sonu test ile bitenleri silecek

ROLLBACK TRANSACTION --İşlemi bu satırdan itibaren geri alınmasını 
bildiriyoruz.
rollback transaction nasıl çalıştırılır örneği

İşlem sırasında bir hata çıkmadığını anlıyorum. Ben o zaman sorgumu gerçek anlamda çalıştırabilirim yani rollback olmadan.

Çoklu işlem yapılırken hata varsa işlemi geri alma

Çoklu işlemler yapılırken işlem sırasında bir hata varsa başarılı olan işlemlerde dahil işlemleri geri almasını sağlar. Eğer bir hata yoksa commit transaction gerçekleşerek işlemler tamamlanmış olur.


BEGIN TRANSACTION
BEGIN TRY
	BEGIN
		/*Yapılacak işlem bloğunuz*/
	END

COMMIT TRANSACTION 

END TRY 

BEGIN CATCH 
	ROLLBACK TRANSACTION
END CATCH

NOT: ROLLBACK TRANSACTION Kullanılmadan önceden yapılmış işlemleri geri alınamaz.

Dilerim yardımcı olabilmişimdir 🙂 İyi günler!

Leave a Reply