异常处理和 OUT/INOUT 参数
在处理异常的一些场景下,存储程序不会将 OUT 和 INOUT 参数的修改值返回给调用者。
如果存储过程由于未处理的异常而退出,则其 OUT 和 INOUT 参数的修改值不会返回给调用者。
如果异常的处理程序是包含 RESIGNAL 语句的 CONTINUE 或 EXIT 处理程序,则执行 RESIGNAL 会弹出诊断区域的堆栈,进而发出异常信号(也就是在进入处理程序之前存在的信息)。如果异常属于一个错误,则 OUT 和 INOUT 参数的值不会返回给调用者。