BeginTrans ve CommitTrans hakkında

14/05/2009, 15:52

mesudi

Arkadaşlar BeginTrans ve CommitTrans hakkında bilgisi olan varmı? Tam olarak ne işe yararlar, nasıl kullanılırlar vs. Tüm arkadaşların yararlanabileceği bir konu olur belki.
14/05/2009, 15:56

Bilgisayarcı

BeginTrans bir transaction başlatır. Bu transaction başlatıldığı andan itibaren commitrans yapılana kadar olan değişimler tabloya yansıtılmazlar. Arada Rollback yaparsan bu değişimler es geçilir.
Örneğin
begintrans yapıp bir kaç tabloya kayıt ekleyen bir Sql çalıştırdın.
commit diyene kadar o tablolarda bu kayıtlar sorgular çalışsa bile görünmez.
Herhangi bir hata durumunda roolback ile bu ekleme işlemlerini iptal edebilirsin.
Eklemeyi unuttum.
bu aralıklar mümkün olduğu kadar kısa tutulması tavsiye edilir.
Fakat performans olarak çok daha iyi sonuç veriri.
msdn derki 100 kayıt eklemek 17 saniye sürüyorsa begin trans ve commit transla bunu 1 sanyenin altına bile çekebilirsiniz..
14/05/2009, 16:29

mesudi

Hocam çok teşekür ederim. Çok aydınlatıcı oldu. Bu anlattıklarınız ADO veya DAO ile yapılan tablo işlemleri için geçerli sanırım.