GBase 8a
安装配置
文章
GBase 8a的Decimal溢出处理参数_gbase_func_compatible_mode
GBase社区管理员发表于2021-09-16 16:55:2840次浏览0个评论
在GBase 8a处理Decimal类型数据时,如果溢出,默认是报错。通过_gbase_func_compatible_mode参数,可以设置溢出时返回null。
参考
参数
_gbase_func_compatible_mode
说明
decimal 类型返回值溢出处理规则:
- _gbase_func_compatible_mode=0 时(默认)报错。
- _gbase_func_compatible_mode=1 时返回 NULL。
该参数支持session级设置。
样例
默认值返回报错
DECIMAL value is out of range
gbase> show variables like '%_gbase_func_compatible_mode%';
+-----------------------------+-------+
| Variable_name | Value |
+-----------------------------+-------+
| _gbase_func_compatible_mode | OFF |
+-----------------------------+-------+
1 row in set (Elapsed: 00:00:00.00)
gbase> select cast(power(2,1000) as decimal(64)) * 10240;
ERROR 1906 (22003): DECIMAL value is out of range in 'pow(2,1000)'
修改参数为1,返回NULL
gbase> set _gbase_func_compatible_mode=1;
Query OK, 0 rows affected (Elapsed: 00:00:00.00)
gbase> select cast(power(2,1000) as decimal(64)) * 10240;
+--------------------------------------------+
| cast(power(2,1000) as decimal(64)) * 10240 |
+--------------------------------------------+
| NULL |
+--------------------------------------------+
1 row in set (Elapsed: 00:00:00.00)
评论已关闭
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25044
- 42023-09-25浏览数:18519
- 52020-05-11浏览数:17526