缥帙各舒散,前后互相逾。这篇文章主要讲述应用系统适配瀚高报错:字段为numeric,但是表达式为varchar相关的知识,希望能为你提供帮助。
【应用系统适配瀚高报错(字段为numeric,但是表达式为varchar)】瀚高数据库
目录
环境
症状
问题原因
解决方案
报错编码
环境
系统平台:IBM:Linux on System z Red Hat Enterprise Linux 4
版本:4.5
症状
应用系统适配瀚高报错:字段为numeric,但是表达式为varchar
问题原因
在瀚高数据库中空字符串和NULL不是等价的,所以当向numeric类型的字段中存入空字符串时,会引发错误。
解决方案
由瀚高工程师编写瀚高数据库自定义转换函数,将空字符串“”转为NULL解决:
create or replace function varchar_to_numeric(varchar) returns numericas
$$
select nullif($1::text,)::numeric ;
$$ language sql strict;
create cast(varchar as numeric) with function varchar_to_numeric(varchar) as implicit;
报错编码
字段为numeric,但是表达式为varchar
推荐阅读
- 进阶大数据架构师学习指导路线
- K8S--通过metrics-sever插件实现top功能
- Renix_端口迁移及修改 IP 地址——网络测试仪实操
- SpringBoot 微信小程序保存微信登录者的个人信息
- cfssl自签证书
- calico IPIP 同节点通信
- [ C++ ] C++类与对象之 类中6个默认成员函数
- Netty进阶 -- WebSocket长连接开发
- [FFH]openharmony南向研究 - 南北向接口Napi实现