是否发送警告信息(send_warning)
📄字数 1.2K
👁️阅读量 加载中...
引入版本
v11.0.0
功能描述
是否向客户端发送警告(NOTICE)级别的异常信息。
参数属性
| 属性 | 属性值 |
|---|---|
| 参数类型 | BOOLEAN |
| 默认值 | TRUE |
| 取值范围 | TRUE, FALSE |
| 影响范围 | 系统级 |
| 修改方式 | 在线修改,立即生效 |
使用场景说明
- 该参数控制系统处理警告的行为。
| send_warning | 作用及影响 |
|---|---|
| true | 任务结束后向客户端发送警告内容。 |
| false | 不做处理。 |
- 该参数应用的场景有:
| send_warning 的应用场景 |
|---|
| 1. 除数为0的计算(相关参数 error_for_division_zero)(E19005); 2. 字符串超长产生截断(相关参数 str_trunc_warning)(E17090/E17111); 3. 用户连接配额不足(相关参数 session_per_user)(E18060); 4. 删除索引/存储过程/序列值生成器/表对象/触发器/视图/用户库时显式指定IF EXIST,且对象不存在(E12007/E8003/E7002/E9005/E5021/E11002/E6005/E2006); 5. 创建索引/存储过程/序列值生成器/表对象/触发器/视图/用户库时显式指定IF EXIST,且对象已存在(E2007/E12008/E9016/E1101/); 6. 创建用户自定义包/存储过程时显式指定FORCE,且出现异常(E8007/E19212); 7. 聚合函数 MIN、MAX、BIT_AND、BIT_OR、BIT_XOR、WM_CONCAT、GROUP_CONCAT、LISTAGG、XML_AGG 计算时传入 NULL(E17091); 8. 聚合/排序分组计算过程中数据来源含有 NULL(E17091); 9. 删除正在运行的定时作业(E21098); 10. 重编译包过程/触发器中出现警告(E19212); 11. 修改表字段时新旧字段完全一样(E16016); 12. JSON类型向基础数据类型转换时,出现数据溢出/数据格式错误(E17005/E17003); 13. 在PL/SQL中执行SELECT..INTO语句时无结果/结果太多(E19009/E19010); 14. LICENSE到期提前提醒(相关参数 license_prompt_day)(E19248); 15. 回滚事务到指定保存点时无法找到UNDO标签(E14004); |
示例
sql
-- 在线修改 send_warning
SQL> SET send_warning TO true;
-- 在线查看 send_warning
SQL> SHOW send_warning;
/*
* 场景一:
* 1. send_warning = true;
* 2. error_for_division_zero = true;
* 3. auto_commit = true;
*/
SQL> SELECT 1/0; -- 抛出异常 E19005 除数为0;
SQL> SELECT min(NULL); -- 执行成功,返回 NULL,并附带警告信息 'E17091 统计函数忽略了部分空值';
/*
* 场景二:
* 1. send_warning = false;
* 2. auto_commit = true;
*/
SQL> SELECT min(NULL); -- 执行成功,返回 NULL。