Video: A rikthehet Raise_application_error?
2024 Autor: Lynn Donovan | [email protected]. E modifikuara e fundit: 2023-12-15 23:53
Brenda një këmbëze a RAISE_APPLICATION_ERROR bën nuk kryej a KTHIM , ndërpret operacionin aktual, d.m.th. një UPDATE/INSERT/DELETE të vetme. A Rikthim kthen të gjitha ndryshimet brenda transaksionit aktual (ose deri në Savepoint të dhënë), kjo është e ndryshme.
Në këtë mënyrë, çfarë është Raise_application_error?
Pergjigju ngre_aplikacionin_error është në fakt një procedurë e përcaktuar nga Oracle që i lejon zhvilluesit të ngrejë një përjashtim dhe të shoqërojë një numër gabimi dhe mesazh me procedurën. Oracle ofron ngre_aplikacionin_error procedurë për t'ju lejuar të rritni numrat e gabimeve me porosi brenda aplikacioneve tuaja.
Për më tepër, çfarë do të ndodhë kur një deklaratë rikthimi ekzekutohet brenda një këmbëze? Kur shkas zjarret transaksioni aktual nuk është ende i plotë. Ndërsa COMMIT përfundon një transaksion duke i lejuar ata në nxitësit do thyej njësinë e punës. Pra ndryshon ekzekutuar në një këmbëzë janë kryer (ose rikthyer) nga transaksioni zotërues i cili ka lëshuar DML-në që e ka lëshuar atë shkas.
Pra, cili është ndryshimi midis Pragma Exception_init dhe Raise_application_error?
pragma përjashtimi init e kthen një Gabim Oracle në një përjashtim të emërtuar. Nëse një operacion i bazës së të dhënave ngre një "burim të zënë" ORA-00054, do t'ju duhet të kodoni:. Ngritja_aplikimi_error përdoret për të ngritur një gabim - përjashtim_fillimi përdoret për të trajtuar gabimet (mendoj se mund të thuash se janë të kundërta ne nje mënyrë).
Çfarë është Sqlerrm?
SQLERRM Funksioni. Funksioni SQLERRM kthen mesazhin e gabimit të lidhur me argumentin e tij të numrit të gabimit. Nëse argumenti hiqet, ai kthen mesazhin e gabimit të lidhur me vlerën aktuale të SQLCODE. SQLERRM pa argument është i dobishëm vetëm në një mbajtës përjashtimi.
Recommended:
A mund të rikthehet deklarata e përditësimit?
5 Përgjigje. Përgjigja e shkurtër është: Jo. Megjithatë, nuk keni nevojë ta hiqni DB-në jashtë linje për të bërë një rivendosje të pjesshme në një tryezë ose tabela. Ju mund të rivendosni një kopje rezervë në një bazë të dhënash të veçantë dhe më pas të përdorni pyetjet TSQL për të rivendosur rreshtat që u ndikuan negativisht nga përditësimi juaj
Cili është ndryshimi midis Pragma Exception_init dhe Raise_application_error?
Pragma përjashtimi init kthen një Gabim Oracle në një përjashtim të emërtuar. Nëse një operacion i bazës së të dhënave ngre një 'burim të zënë' ORA-00054, duhet të kodoni:. Raise_application_error përdoret për të ngritur një gabim - përjashtim_init përdoret për të trajtuar gabimet (mendoj se mund të thuash se janë të kundërta në një farë mënyre)