TRANSACTİON: Bir işlem yarıda kaldımı kalmadımı tamamen bittimi birmedimi kontrol eder güvenligi saglar mesela bankya para yattı yatarken bir hata meydana geldi alıcıya para gitti gönderenden para düşülmedi banka zararda olur gibi...
create proc HavaleYap
@gonderen int,
@alici int,
@miktar money
as
begin try
begin tran havale //Transaction işlemi başaltılır commit ve rollback olanakadar devameder
update Hesap set Bakiye +=@miktar where Hesapid=@alici
update Hesap set Bakiye -=@miktar where Hesapid=@gonderen
commit tran havale // Transaction işlemi onaylanınca işlemler kalıcı olur
end try
begin catch
rollback tran havale
print ' bir hata oluştu'
end catch
cagırırken ise ;
begin tran
insert Hesap values('yasemin',500)
EKLER
ROLLBACK TRAN dersek yasemini geri siler
O anda kac transaction calsıyor görmek icin :
select @@TRANCOUNT
create proc HavaleYap
@gonderen int,
@alici int,
@miktar money
as
begin try
begin tran havale //Transaction işlemi başaltılır commit ve rollback olanakadar devameder
update Hesap set Bakiye +=@miktar where Hesapid=@alici
update Hesap set Bakiye -=@miktar where Hesapid=@gonderen
commit tran havale // Transaction işlemi onaylanınca işlemler kalıcı olur
end try
begin catch
rollback tran havale
print ' bir hata oluştu'
end catch
cagırırken ise ;
begin tran
insert Hesap values('yasemin',500)
EKLER
ROLLBACK TRAN dersek yasemini geri siler
//TRANSACTİON 3 tanedir
Auto Complate Mode : Transaction otomatik acılır otomatik kapanır
İmplicit Mode : transaction otomatik acılır fakat elle kapatmak gerekir
Explicit Mode: yazılımcının elle acıp elle kapattıgı moddur
O anda kac transaction calsıyor görmek icin :
select @@TRANCOUNT