首页 > 数据库 > Oracle > Oracle 隐藏列
自己原文公众号: https://mp.weixin.qq.com/s/pDPqeGn0WqR06oYg7rIU5A
CREATE TABLE xxg (id int, name varchar2(40), sal number(9) INVISIBLE);
注意最后一列是不可见。

我们在工具中PLSQL这种工具中右键,View一下是看不到最后一列的。
但是在命令行中 使用desc 命令是可以看到的。3列。

这个时候我insert隐式这种写法,两列是可以的。查询select*也是看到2列。
将这一列visible
如果放开这一列,那么就要insert3列。

再看select *是3列。
再次关掉。将这一列invisible

这里结果就是,显示要求列的话,就无视不可见。直接显示。
但是如果就是*的话,看不出到不可见的列。
这个特性有什么用?
我在想一个是安全方面,只要不是显示,不告知别人。那么这一列是别人看不到的。
还有一个是,一次性数据库发布先发上去。但是应用功能还没开发完成,没关系,等下次开发好了,只要做一个字段可见的打开就好了。这样的操作丝毫不影响任何动作。不会阻塞DML,非常灵活。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/637517/viewspace-2847512/ ,如需转载,请注明出处,否则将追究法律责任。