Selam Arkaaşlar,
Delphi7 de firebird kullanıyorum. Firebird 1.5 de var olan savepoint i ibx lerle birlikte kullanamıyorum. Kullandığımda interbase 7.1 upgrade i istiyor delphi. Acaba yeni 3th parti componentler gerekmeden savepoint i kullanabilir miyim ? Yok hayır kullanamazsam, kullanabilmem için ne yapmam gerekir ?
İlginize şimdiden teşekkür ederim.
Firebird savepoint
Savepointi merak ettim bu konuyu biraz araştırdım.Belgeler.org bu makaleye rasladım.Firebird 2.0 içinde olacak diye biliyorum.Ama nasıl ne şekilde bilmiyorum.Bilen dostlarımıza saygı sevgi rica ile ...

Bir hareketi içinde kayıt noktaları belirterek cümle cümle denetlemek de mümkündür. Kayıt noktaları bir hareketin belli parçalarını seçerek iptal etmeyi mümkün kılar. Bir kayıt noktasını SAVEPOINT ile tanımladıktan sonra ihtiyaç duyarsanız, ROLLBACK TO ile bu kayıt noktasına kadar olan kısmı geri sarabilirsiniz. Bir hareketin bu iki komut arasında kalan veritabanı değişiklikleri iptal edilir, fakat, bu bölümden önce yapılanlar veritabanında kalır.
Bir kayıt noktasına kadar geri sarıldıktan sonra, işlem bu noktadan devam eder, öyle ki, bu defalarca yapılabilir. Tersine, belli bir kayıt noktasına geri sarmaya artık ihtiyaç duymayacağınızdan emin olduğunuzda, onu serbest bırakabilirsiniz, böylece sistem bazı özkaynakları serbest bırakabilir. Serbest bırakmanın da, bir kayıt noktasına geridönmenin de tanımlanmasının ardından tüm kayıt noktalarının özdevimli olarak serbest bırakılacağını unutmayın.
Bunların hepsi hareket kümesinin içinde gerçekleşir, dolayısıyla, bu işlemlerin hiçbiri diğer veritabanı oturumlarına görünür değildir. Bir hareket kümesini işleme sokulduğunda, geriye sarma işlemleri diğer oturumlara asla görünür olmazken, işleme sokulan diğer eylemler bir birim olarak diğer oturumlara görünür hale gelir.
Bankanın veritabanını hatırlarsanız, Alice'in hesabından Bob'un hesabına 100 dolar aktarmıştık ama daha sonra baktığımızda, paranın Wally'nin hesabına geçmesi gerektiğini keşfetmiş olalım. Bunun için kayıt noktalarını şöyle kullanabiliriz:
Bu örnek, şüphesiz fazla basit, fakat bir hareket bloğu üzerinde kayıt noktalarınını kullanımı ile ilgili yeterince denetim var. Dahası, sistem tarafından bir hatadan dolayı çıkış istendiğinde, ROLLBACK TO bir hareket kümesinin denetimini yeniden kazanmanın tek yoludur, tamamen gerisarma yapılıp tekrar başlanabilir.Kod: Tümünü seç
BEGIN; UPDATE accounts SET balance = balance - 100.00 WHERE name = 'Alice'; SAVEPOINT my_savepoint; UPDATE accounts SET balance = balance + 100.00 WHERE name = 'Bob'; -- dur bakalım ... Wally'nin hesabını kullanacağız ROLLBACK TO my_savepoint; UPDATE accounts SET balance = balance + 100.00 WHERE name = 'Wally'; COMMIT;
Firebird 1.5.2 de savepoint desteği var. IBX i upgrade etmek için
viewtopic.php?t=6636&highlight=ibx
bu linki kullanın.
viewtopic.php?t=6636&highlight=ibx
bu linki kullanın.