云数据库 GAUSSDB-设置回调
时间:2024-11-02 18:45:23
设置回调
设置回调操作,当告警或者错误发生时,直接执行具体操作进行处理,设置回调命令如下:
EXEC SQL WHENEVER condition action;
condition取值范围:
- SQLERROR:当在SQL语句执行期间发生错误时,调用指定操作。
- SQLWARNING:当在SQL语句执行期间发生告警时,调用指定操作。
- NOT FOUND:当SQL语句检索或者影响为零行时,调用指定操作。
action取值范围:
- CONTINUE:忽略回调错误条件,继续执行,通常可以用来停止break包含条件,为缺省值。
- GOTO label/GO TO label:跳转到指定标签(使用C语言goto语句)。
- SQLPRINT:输出消息到标准错误。
- STOP:调用exit(1),终止程序。
- DO BREAK:执行C语句break,只能在循环中或者switch语句中使用。
示例如下:
/* 当出现一个告警时它打印一个消息,发生一个错误时中止程序。 */ EXEC SQL WHENEVER SQLWARNING SQLPRINT; EXEC SQL WHENEVER SQLERROR STOP;
- 语句EXEC SQL WHENEVER是SQL预处理器的一个指令,而非一个C语言语句。不管C语言程序的流程如何,该语句设置的错误或告警动作都适用于位于处理程序设置点之后的嵌入式SQL语句,除非第一个EXEC SQL WHENEVER语句和导致错误或告警情况发生的SQL语句之间为同一个情况设置了不同的动作。因此下面的两个C语言程序都不会得到预期的效果:
/* * 错误 */ void func() { ... if (verbose) { EXEC SQL WHENEVER SQLWARNING SQLPRINT; } ... EXEC SQL SELECT ...; ... }
/* * 错误 */ void func() { ... set_error_handler(); ... EXEC SQL SELECT ...; ... } static void set_error_handler(void) { EXEC SQL WHENEVER SQLERROR STOP; }
- 当使用DO BREAK时只能用于while/for/switch场景,且用完需要使用CONTINUE语句忽略。
父主题: 错误处理
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-0240.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章
- GaussDB学习_gaussdb教程_高斯数据库学习_华为云
- GaussDB培训_GaussDB教程_高斯数据库培训-华为云
- GaussDB视频教程_gaussdb查看表结构语句_高斯数据库视频教程_华为云
- GaussDB数据库云备份_华为GaussDB_高斯数据库云备份
- GaussDB使用技巧_高斯数据库下载_高斯数据库使用技巧_华为云
- GaussDB数据库考试_GaussDB认证_高斯数据库考试_华为云
- GaussDB数据库安全_GaussDB收费吗_高斯数据库安全
- GaussDB性能怎么调_GaussDB性能调优_高斯数据库性能怎么调-华为云
- GaussDB数据库概念_openGauss_华为高斯数据库概念
- GaussDB学习_gaussdb数据库_高斯数据库学习_华为云