[20131121]12c sqlplus的set colinvisible on.txt

[20131121]12c sqlplus的set colinvisible on.txt

12c 加入invisible column,但是如果要查看表的隐含列,要查询一些视图.实际上在sqlplus执行set colinvisible on,在执行desc

做一个测试看看.

@ver
BANNER                                                                               CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production              0

SQL> create table t ( a number,b number,c number);
Table created.

SQL> desc t;
Name  Null?    Type
----- -------- --------
A              NUMBER
B              NUMBER
C              NUMBER

SQL> column column_name format a20
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
---------- ----------------- ------------------ -------------------- --- ---
         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 t
Name  Null?    Type
----- -------- ---------------------------
A              NUMBER
C              NUMBER

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
                           2                  2 B                    YES NO
         1                 1                  1 A                    NO  NO

SQL> 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 on
SQL> desc t
Name           Null?    Type
-------------- -------- ----------
A                       NUMBER
C                       NUMBER
B (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  NO

SQL> desc t
Name  Null?    Type
----- -------- -------
A              NUMBER
C              NUMBER
B              NUMBER

--可以发现显示顺序COLUMN_ID发生了变化,但是存储顺序 SEGMENT_COLUMN_ID并没有改变. INTERNAL_COLUMN_ID保持开始建立的顺序.

阅读(2289) | 评论(0) | 转发(0) |

0

上一篇:[20131121]12c新特性Session sequences.txt

下一篇:[20131121]奇怪的执行计划变化.txt

相关热门文章

  • 用asp发布水晶报表
  • 用asp发布水晶报表
  • Ubuntu Linux中文输入法(scim...
  • 深入理解linux启动过程...
  • linux vmware上网设置

给主人留下些什么吧!~~

评论热议

请登录后评论。

登录 注册

盛拓传媒简介 | 关于IT168 | 合作伙伴 | 广告服务 | 使用条款 | 投稿指南 | 诚聘精英 | 联系我们 | 苹果论坛 | 网站导航 | 往日回顾

北京皓辰网域网络信息技术有限公司. 版权所有 京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员 测绘资质证书(乙测资字11005067) 网络文化经营许可证

感谢所有关心和支持过ITPUB的朋友们

时间: 2024-11-09 09:56:07

[20131121]12c sqlplus的set colinvisible on.txt的相关文章

[20131121]12c新特性Session sequences.txt

[20131121]12c新特性Session sequences.txt http://docs.oracle.com/cd/E16655_01/server.121/e17209/statements_6016.htm SESSION Specify SESSION to create a session sequence, which is a special type of sequence that is specifically designedto be used with glo

[20150309]sqlplus set array最小2.txt

[20150309]sqlplus set array最小2.txt --上午做测试发现1个问题,设置array=1是无效的,在sqlplus下set array最小是2.自己做一个人测试: 1.建立测试环境: SCOTT@test> @ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- ---------------------------

[20141027]12c rman copy的分段备份.txt

[20141027]12c rman copy的分段备份.txt --12G rman下可以实现copy的分段备份,而11G下可以仅仅支持备份集的分段备份.做一个测试看看. --11G: SCOTT@test> @ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- ---------------------------------------

[20160806]sqlplus 1000行自动提交.txt

[20160806]sqlplus 1000行自动提交.txt --同事要求我提交的插入脚本要求1000行有1个提交. --当时我自己也没有多想,因为toad有一个功能可以直接实现这个功能. 结果集上点击右键选择=>'export dataset': export format 选择 insert statments commit interval 选择1000,这样生成的sql脚本就是每隔1000条记录有1个提交. --假如已经生成了脚本,如何修好呢?以scott.dept表为例来说明: SE

[20130727]ORACLE 12C使用expdp导出view数据.txt

[20130727]ORACLE 12C使用expdp导出view数据.txt 12C新特性里面可以定义试图,然后通过view当作表一样导出数据,然后导入数据库,自己做一个测试: 1.建立测试环境: SQL> @ver BANNER -------------------------------------------------------------------------------- Oracle Database 12c Enterprise Edition Release 12.1.

[20130803]12C在表中使用sequence.txt

[20130803]12C在表中使用sequence.txt 记得以前学习数据库的时候,第1个接触的数据库是informix,里面可以在表上定义顺序号,这样在插入时无需指定,保证唯一.(也许记忆有错,毕竟很久没使用它了).oracle 12c开始支持这种特性,我的感觉这些主要为了别的数据库移植到oracle上来. 做一个测试看看: SQL> @ver BANNER                                                                   

[20131130]12c建表period for valid.txt

[20131130]12c建表period for valid.txt 9i以后查询过去某个时间点,加入as of timestap 或者 as of scn,但是这个受undo*参数的控制. 当然11G加入Flashback DataArchive特性,就是通过一个表空间记录表的一些变化,查询历史数据. 实际上这个就是flashback table的扩展(个人认为)!. 12c 有一个新特性 Temporal Validity. 通过加入有效的日期字段,来实现flashback query的特

[20130918]12c FETCH FIRST和绑定变量.txt

[20130918]12c FETCH FIRST和绑定变量.txt http://connormcdonald.wordpress.com/2013/09/11/12c-fetch-first/ 重复测试: @ver BANNER                                                                               CON_ID ------------------------------------------------

[20120410] sqlplus中set termout off.txt

[20120410] sqlplus中set termout off.txt 今天测试使用set termout off,发现不起作用,并不能禁止输出.google,发现如下链接:http://www.itpub.net/thread-467880-1-1.html 实际上它仅仅能禁止@sql的输出,测试如下: SQL> show termouttermout ONSQL> select sysdate from dual ; SYSDATE-------------------2012-04