2021-09-17
PLSQL或Navicat等工具连接oracle,查询表数据,使一些指定的词汇直接显示成*怎么实现?
5M不经过代码,不改SQL语句,就是select * from tableName 使某些词显示成*
我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
5M不经过代码,不改SQL语句,就是select * from tableName 使某些词显示成*
P图
评论
有用 01.如果你是想使某些列都变成*,可以使用wallet功能。
2.如果是可以新建一个用户,那么你可以在本用户创建一个视图,视图里用replace处理*号,然后在新用户下,以原表名为名称,建立一个指向视图的同义词,那么在新用户不改sql代码,就可以实现某些词变成*了。
3.另外,还有一种方式,就是18C版本开始添加的多态表函数,只是sql外面要再包一层,像下面这样
select * from 自定义函数名称('select * from tableName');
这样你就可以不改动sql本身,来实现变*号的效果了。而且这个函数是通用的,你传任何sql进去都能达到同样的效果。
关于多态表函数,请参考这篇文章
https://www.darkathena.top/archives/oracle-ptf-%E5%A4%9A%E6%80%81%E8%A1%A8
评论
有用 0
墨值悬赏