mysql数据库切换成kingbase(人大金仓)数据库时遇到的字段不存在问题

一、问题描述

mysql数据库切换成国产数据库人大金仓(kingbase)数据库的遇到的字段不存在的问题,根本原因其实是没有找到相对应的表,报错示例如下图所示:

二、问题解决

1、如果所有的表都发生上述的错误,kingbase的表在xml里面写sql的时候需要带上空间名的前缀,比如public.tableName,不然的话会找不到相应的表,当然了可以直接对kingbase的数据库做统一处理,处理步骤如下:
第一步更改数据库的配置

java 复制代码
ALTER DATABASE 数据库名 SET search_path to "$user", public, sys, sys_catalog, pg_catalog;

第二步重载配置文件

java 复制代码
select sys_reload_conf(); 

第三步可以看下是否生效

java 复制代码
show search_path;

2、如果你的项目中有user表,并且其它表正常,只有user表发生这样的错误,原因是,kingbase中user是一个关键字,你的表名和关键字冲突了,解决方法如下:
方法一: sql中user表加双引号,即:user修改成"user"
方法二: sql中user表前面加上空间名,即:user修改成public.user

相关推荐
听雪楼主.2 分钟前
某客户核心业务系统报ORA-600错误分析处理
数据库·oracle
威联通安全存储7 分钟前
严谨性的数字基石:某精密医疗器械企业基于威联通的数据治理实践
运维·数据库·python
不剪发的Tony老师9 分钟前
DbPaw:一款AI驱动的现代化数据库开发工具
数据库
2301_7679026415 分钟前
mysql备份
数据库·mysql·adb
剩下了什么16 分钟前
Redis 密码设置
数据库·redis·缓存
NineData20 分钟前
NineData 社区版 V4.10.0 正式发布
数据库·mysql·代码规范
heze0920 分钟前
sqli-labs-Less-46
数据库·mysql·网络安全
Y0011123621 分钟前
Day1-MySQL概述+SQL-1
数据库·mysql
菩提小狗30 分钟前
第22天:安全开发-PHP应用&留言板功能&超全局变量&数据库操作&第三方插件引_笔记|小迪安全2023-2024|web安全|渗透测试|
数据库·安全·php
阿迷不想上班32 分钟前
千万级别数据表更新操作记录
数据库