• SQL

    SQL Ders25- Transaction Kullanımı

    Transaction örneğimizi Northwind veri tabanımızdan gerçekleştiriyor olacağız. Bu transaction’ımızda foreign key hatası yüzünden tüm yapılan işlemler geri alınacaktır. Rollback transaction çalışacaktır. Burada küçük bir ayrıntıya değinelim. Bir transaction açıldığı zaman, transaction scope içerisinde değişiklik gören kayıtlar var ise bu kayıtlar lock durumuna alınır. Aksini belirtmediğiniz sürece transaction bitene kadar başka bir kullanıcı bu kayıtlara ulaşamaz, okuyamaz ve üzerinde değişiklik yapamaz. Eğer kaç tane transaction yarattığınızı öğrenmek istiyorsanız aşağıdaki kodu kullanabilirsiniz. İç İçe Transactionlar(Nested Transactions) Kimi zaman bir transaction bitmeden diğer bir transaction yaratma isteğimiz doğabilir. Bunlara da Nested Transaction denir. Burada görüldüğü gibi tran1 transaction’ı bitmeden tran2 transaction başlamış durumdadır. İçinde bulunan transaction’ları ya Rollback eder ya da Commit. Save…

  • SQL

    SQL Ders24- Transaction Nedir

    Transaction, daha küçük parçalara ayrılamayan en küçük işlem yığınına denir. Belirli bir grup işlemin arka arkaya gerçekleşmesine rağmen, işlemlerin toplu olarak değerlendirilmesini sağlar. “Transaction”, prensip olarak ya bütün işlemleri gerçekleştirir ya da hiçbirini gerçekleştirmez. İşlemlerden biri dahi başarısız olursa, bu prensip nedeniyle hiçbir işlem olmamış kabul edilir; ancak tüm işlemler başarılı olduğunda” transaction”, içinde gerçekleşen tüm veri değişikliklerini onaylamış demektir. Bu işlemlerin ardı arkasına gelince bir tanesinin bile gerçekleşmemesi veri kaybına neden olacağı anlamına gelmektedir. Bu işlemler sırasında veriler üzerindeki değişikliklerin de tutarlı olması, birbirlerini tamamlayıcı nitelik taşıması gerekir. Bu özellikleri sağlayabilmesi içintransaction kavramı ortaya atılır. Veri tabanı uygulamaları geliştirirken böyle bir hataya sebep olacakları da düşünerek transaction bloğunun içine alınarak işlemler yapılır.…