|
|
| Deklarace rutiny | Deklarace objektů v SQL | Deklarace handleru |
deklarace_výjimky ::= DECLARE identifikátor CONDITION [ FOR SQLSTATE [ VALUE ] sqlstate ];
Touto deklarací se deklaruje výjimka označená identifikátorem. Deklarovanou výjimku lze vyvolat příkazem SIGNAL a lze jí přiřadit handler v deklaraci handleru.
Je-li uveden řetězec znaků sqlstate, pak se deklarovaná výjimka s ním sdruží. Případný handler deklarovaný pro tuto výjimku bude platit i pro situaci popsanou uvedeným sqlstate. Stejný sqlstate se nesmí použít ve více výjimkách deklarovaných se stejným rozsahem platnosti.
Výjimky bez sqlstate jsou spouštěny explicitně příkazem SIGNAL. Slouží k opuštění posloupnosti příkazů, které se právě provádějí, opuštění jednoho nebo více složených příkazů nebo jedné či více rozpracovaných rutin.
Globální výjimky se deklarují v proceduře Module_globals.
| Deklarace rutiny | Deklarace objektů v SQL | Deklarace handleru |