[20131121]12c sqlplus的set colinvisible on.txt
12c 加入invisible column,但是如果要查看表的隐含列,要查询一些视图.实际上在sqlplus执行set colinvisible on,在执行desc
做一个测试看看.@verBANNER CON_ID-------------------------------------------------------------------------------- ----------Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production 0SQL> create table t ( a number,b number,c number);Table created.SQL> desc t;Name Null? Type----- -------- --------A NUMBERB NUMBERC NUMBERSQL> column column_name format a20SQL> select column_id, segment_column_id, internal_column_id, column_name, hidden_column, virtual_column from user_tab_cols where table_name = 'T'; COLUMN_ID SEGMENT_COLUMN_ID INTERNAL_COLUMN_ID COLUMN_NAME HID VIR---------- ----------------- ------------------ -------------------- --- --- 3 3 3 C NO NO 2 2 2 B NO NO 1 1 1 A NO NO--如果隐藏列.SQL> alter table t modify b invisible;Table altered.SQL> desc tName Null? Type----- -------- ---------------------------A NUMBERC NUMBERSQL> select column_id, segment_column_id, internal_column_id, column_name, hidden_column, virtual_column from user_tab_cols where table_name = 'T'; COLUMN_ID SEGMENT_COLUMN_ID INTERNAL_COLUMN_ID COLUMN_NAME HID VIR---------- ----------------- ------------------ -------------------- --- --- 2 3 3 C NO NO 2 2 B YES NO 1 1 1 A NO NOSQL> select column_id, column_name from user_tab_columns where table_name='T'; COLUMN_ID COLUMN_NAME---------- -------------------- 1 A B 2 C --要查询对应的视图才知道.SQL> set colinvisible onSQL> desc tName Null? Type-------------- -------- ----------A NUMBERC NUMBERB (INVISIBLE) NUMBER--修改为可见.SQL> alter table t modify b visible;Table altered.SQL> select column_id, segment_column_id, internal_column_id, column_name, hidden_column, virtual_column from user_tab_cols where table_name = 'T'; COLUMN_ID SEGMENT_COLUMN_ID INTERNAL_COLUMN_ID COLUMN_NAME HID VIR---------- ----------------- ------------------ -------------------- --- --- 2 3 3 C NO NO 3 2 2 B NO NO 1 1 1 A NO NOSQL> desc tName Null? Type----- -------- -------A NUMBERC NUMBERB NUMBER--可以发现显示顺序COLUMN_ID发生了变化,但是存储顺序 SEGMENT_COLUMN_ID并没有改变. INTERNAL_COLUMN_ID保持开始建立的顺序.
阅读(2289) | 评论(0) | 转发(0) |