ORACLE数据源如果schema和连接用户不同,获取的数据源表的列为空

dataease版本:1.18
运行环境:Linux centos7
浏览器版本:Microsoft Edge版本 114.0.1823.58 (正式版本) (64 位)
执行步骤:
1、创建Oracle数据源:连接用户使用SYSTEM,schema选择test
2、点击数据源表:checkTEST(此表在test这个schema下)
3、点击checkTEST表的详情(列信息为暂无数据)

麻烦帮忙看一下是什么问题,谢谢,非常感谢

试试看 SQL 数据集,select * from checkTest 试试,能不能查出数据呢?

我这个表不在连接用户SYSTEM下,所以报错表不存在

我去看了一下,这个跟你的 schema 还是有关系的,
查询数据库表的时候,DataEase 执行的是以下的 SQL

select table_name, owner, comments from all_tab_comments where owner=schema

你的用户为 SYSTEM,这时候是能查出来的。
查询表字段时,DataEase 塞入的就是你的 test schema 了,这时候就已经没有权限查了。
所以建议你把 SYSTEM 用户换成 test,这样跟你的 schema 对应上,应该就可以了。

噢噢,感谢,那只能支持连接用户跟schema相同的场景了,这是bug还是功能限制呢,后续版本会支持这种用户跟schema不同的场景吗

这个理论上也不算 bug,你可以去 dataease 的 github 上提一个 issue,看看官方后续有没有规划。
https://github.com/dataease/dataease/issues

好的,感谢大佬!