Raise_application_error geri alıyor mu?
Raise_application_error geri alıyor mu?

Video: Raise_application_error geri alıyor mu?

Video: Raise_application_error geri alıyor mu?
Video: PL - SQL - 22 - RAISE_ APPLICATION_ ERROR 2024, Kasım
Anonim

Bir tetikleyicinin içinde bir RAISE_APPLICATION_ERROR yapar gerçekleştirmemek GERİ DÖNME , geçerli işlemi iptal eder, yani tek bir UPDATE/INSERT/DELETE. A geri alma geçerli işlemdeki (veya belirli bir Savepoint'e kadar) tüm değişiklikleri geri alır, bu farklıdır.

Bu şekilde Raise_application_error nedir?

Cevap: boost_application_error aslında Oracle tarafından tanımlanan ve geliştiricinin bir istisna oluşturmasına ve prosedürle bir hata numarası ve mesajı ilişkilendirmesine izin veren bir prosedürdür. Oracle şunları sağlar: boost_application_error uygulamalarınız içinde özel hata numaralarını yükseltmenize izin veren prosedür.

Ayrıca, bir tetikleyici içinde bir geri alma ifadesi yürütüldüğünde ne olacak? Ne zaman tetiklemek ateşler mevcut işlem hala tamamlanmadı. COMMIT, onlara izin veren bir işlemi sonlandırırken tetikleyicilerde iş birimini kırmak. yani değişir bir tetikleyicide yürütülür tetikleyen DML'yi yayınlayan sahiplik işlemi tarafından taahhüt edilir (veya geri alınır). tetiklemek.

Pragma Exception_init ve Raise_application_error arasındaki fark nedir?

pragma istisna init, bir Oracle Hatasını adlandırılmış bir istisnaya dönüştürür. Bir veritabanı işlemi bir ORA-00054 "kaynak meşgul" oluşturursa, şunu kodlamanız gerekir:. Raise_application_error bir hatayı ARTIRMAK için kullanılır - istisna_init hatalarla başa çıkmak için kullanılır (sanırım onların zıt olduklarını söyleyebilirsiniz içinde yol).

Sqlerrm nedir?

SQLERRM İşlev. İşlev SQLERRM hata numarası bağımsız değişkeniyle ilişkili hata mesajını döndürür. Argüman atlanırsa, geçerli SQLCODE değeriyle ilişkili hata mesajını döndürür. SQLERRM argümansız, yalnızca bir istisna işleyicisinde kullanışlıdır.

Önerilen: