Tavsiye, 2024

Editörün Seçimi

SQL'de COMMIT ve ROLLBACK Arasındaki Fark

COMMIT ve ROLLBACK, işlemleri yapmak, işlemleri yapmak veya geri almak için kullanılan iki işlem ifadesidir. Bir işlemde bir dizi sorgu olabilir veya veritabanını değiştiren güncelleme ifadelerine sahip olabilir. COMMIT ve ROLLBACK arasındaki temel fark, çalışmalarında yatıyor. İşlem başarıyla gerçekleştirilirse, COMMIT deyimi, işlem tarafından veritabanında yapılan değişikliklerin kalıcı olmasını sağlar. Öte yandan, bir nedenden ötürü işlem başarılı bir şekilde yürütülürse, ROLLBACK ifadesi tüm güncellemeleri geçerli işlemin ilk ifadesinden itibaren geri alır.

Aşağıda gösterilen karşılaştırma tablosu yardımıyla SQL'deki Commit ve ROLLBACK ifadeleri arasındaki farkı tartışalım.

Karşılaştırma Tablosu

Karşılaştırma için temelCOMMITROLLBACK
TemelCOMMIT, mevcut işlem tarafından yapılan değişiklikleri doğrular.ROLLBACK geçerli işlem tarafından yapılan değişiklikleri siler.
EfektCOMMIT deyiminin yürütülmesinden sonra, işlem ROLLBACK olamaz.ROLLBACK çalıştırıldıktan sonra veritabanı önceki durumuna ulaşır, yani işlemin ilk ifadesinin yürütülmesinden önce.
olayCOMMIT, işlem başarıyla yürütüldüğünde gerçekleşir.ROLLBACK, işlem yürütmenin ortasında iptal edildiğinde gerçekleşir.
SözdizimiCOMMIT;ROLLBACK;

COMMIT'un tanımı

COMMIT, bir işlemin başarıyla tamamlandığını bildiren bir SQL ifadesidir. Bir işlemin herhangi bir kesinti olmadan yürütülmesini tamamladığında, işlem tarafından veritabanında yapılan değişiklikler kalıcı hale gelir. Bu, veritabanının işlemin ilk ifadesinin uygulanmasından önce olduğu önceki durumlarını yeniden kazanamayacağı anlamına gelir.

COMMIT deyiminin sözdizimi şöyledir:

COMMIT;

İşlemin son ifadesi sona erdiğinde işlem kısmen taahhüt edilir . Daha sonra, kurtarma protokolleri, bir sistem arızasının bile veritabanının değişikliklerin kalıcı olmasını sağlayamamasını sağlar. Bu kontrol edilir edilmez, işlemin kesinleşme noktasına ulaşılmış ve en sonunda işlem kesinleşmiş bir duruma girmiştir. İşlem bir taahhüt altına girdiğinde, geri alınamaz ve yeni bir işlem başlar.

ROLLBACK'un tanımı

COMMIT gibi, ROLLBACK de bir SQL ifadesidir ve işlemin başarıyla tamamlanmadığını gösterir. Bu nedenle, işlem tarafından yapılan değişiklikleri geri almak için işlem iptal edildi . ROLLBACK'in yürütülmesinden sonra, mevcut işlem tarafından yapılan hiçbir değişiklik yoktur.

ROLLBACK'in sözdizimi şöyledir:

RULO;

Bir işlemin yürütülmesi sırasında bir hata meydana gelirse, işlem ROLLBACK işlemi gerekli olur. Hata, sistem arızası, elektrik kesintisi, işlem bildirimlerindeki hata, sistem çökmesi olabilir. Elektrik kesintisi veya sistem çökmesi durumunda, sistem tekrar başlatıldığında, ROLLBACK oluşur. ROLLBACK, yalnızca COMMIT henüz yürütülmediyse oluşabilir.

SQL'de COMMIT ve ROLLBACK Arasındaki Temel Farklar

  1. SQL'in COMMIT ve ROLLBACK deyimleri arasındaki temel fark, COMMIT deyiminin yürütülmesinin mevcut işlem tarafından yapılan tüm değişiklikleri kalıcı hale getirmesidir. Diğer taraftan, ROLLBACK'in yürütülmesi, geçerli işlem tarafından yapılan tüm değişiklikleri siler.
  2. COMMIT deyimi bir kez işlem yaptıktan sonra işlem tarafından yapılan değişiklik ROLLBACK olamaz. Ancak, bir ROLLBACK deyimi yürütüldüğünde veritabanı önceki durumuna ulaşır.
  3. COMMIT, işlem beyanlarının başarılı bir şekilde yürütülmesinde idam edilir. Ancak, ROLLBACK, işlem başarıyla gerçekleştirilemediğinde yürütülür.

Sonuç:

İşlem tarafından yapılan değişikliklerin veritabanına kalıcı olarak kaydedilmesini sağlamak için, işlemin başarıyla tamamlanmasından sonra COMMIT'i kullanın. İşlem yürütülürken herhangi bir hatayla karşılaşırsa, işlem tarafından yapılan değişiklikleri geri almak için ROLLBACK kullanılır.

Top