Raise_application_error orqaga qaytariladimi?
Raise_application_error orqaga qaytariladimi?

Video: Raise_application_error orqaga qaytariladimi?

Video: Raise_application_error orqaga qaytariladimi?
Video: Др. Закир Найк | Дуо тақдирни ўзгартирадими? 2024, May
Anonim

Trigger ichida a RAISE_APPLICATION_ERROR shunday qiladi bajarmaslik a ORTAGA OLISH , u joriy operatsiyani to'xtatadi, ya'ni bitta UPDATE/INSERT/DELETE. A Orqaga qaytarish joriy tranzaksiyadagi (yoki berilgan Savepointgacha) barcha o'zgarishlarni qaytaradi, bu boshqacha.

Shu tarzda, Raise_application_error nima?

Javob: The oshirish_ilova_xatosi Bu aslida Oracle tomonidan aniqlangan protsedura bo'lib, ishlab chiquvchiga istisnoni ko'tarish va xato raqami va xabarni protsedura bilan bog'lash imkonini beradi. Oracle taqdim etadi oshirish_ilova_xatosi ilovalaringizda maxsus xato raqamlarini oshirishga imkon beruvchi protsedura.

Bundan tashqari, trigger ichida orqaga qaytarish bayonoti bajarilganda nima bo'ladi? Qachon tetik yong'in joriy tranzaksiya hali tugallanmagan. Chunki COMMIT ularga ruxsat beruvchi tranzaksiyani tugatadi triggerlarda bo'lardi ish birligini buzish. Shunday qilib, o'zgaradi triggerda bajariladi ni ishga tushirgan DMLni chiqargan egalik tranzaktsiyasi tomonidan amalga oshiriladi (yoki orqaga qaytariladi). tetik.

Pragma Exception_init va Raise_application_error o'rtasidagi farq nima?

pragma exception init Oracle xatosini nomli istisnoga aylantiradi. Agar ma'lumotlar bazasi operatsiyasi ORA-00054 "resurs band" ni ko'tarsa, siz quyidagi kodni kiritishingiz kerak bo'ladi:. Ilova_xatosini ko'tarish xatoni ko'tarish uchun ishlatiladi - exception_init xatolar bilan shug'ullanish uchun ishlatiladi (o'ylaymanki, ular bir-biriga qarama-qarshidir a ichida yo'l).

Sqlerrm nima?

SQLERRM Funktsiya. Funktsiya SQLERRM uning xato raqami argumenti bilan bog'liq xato xabarini qaytaradi. Agar argument o'tkazib yuborilsa, u SQLCODE ning joriy qiymati bilan bog'liq xato xabarini qaytaradi. SQLERRM argumentsiz faqat istisno ishlovchida foydalidir.

Tavsiya: