Oracle 隱藏列

xuexiaogang發表於2021-12-13

自己原文公眾號: 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部落格 ” ,連結:http://blog.itpub.net/637517/viewspace-2847512/,如需轉載,請註明出處,否則將追究法律責任。

相關文章