#openGauss #入门 #安装 #数据库 #开源
知识来源:docs-opengauss.osinfra.cn/zh/
场景说明:
- 只有RESIGNAL,即RESIGNAL。这种形式的RESIGNAL语句直接恢复上一个诊断区域的堆栈,并将其设置为当前诊断区域,相当于未修改错误信息,直接抛出。
- 带有signal_information_item的RESIGNAL,即RESIGNAL SET signal_information_item [, signal_information_item] …。与仅有RESIGNAL的场景一致,但该场景会根据signal_information_item修改弹出的错误信息。
- 带有condition_value和signal_information_item的RESIGNAL,即RESIGNAL condition_value [SET signal_information_item [, signal_information_item] …]。该场景会根据condition_value和signal_information_item更改错误信息,并将修改后的错误信息添加到诊断区域中。
约束说明:
- signal/resignal语法只在B模式下生效,即sql_compatibility = 'B'。
- resignal只能在declare … handler语句中调用。
- signal/resignal语句中,给condition_information_item_name赋值为NULL时,执行会报错。
- opengauss中的warning不会触发declare handler异常处理机制,但signal和resignal触发的warning告警会触发declare handler异常处理机制。
#openGauss #入门 #安装 #数据库 #开源