Starting from 12c, Oracle allows columns to be hidden from application.
Columns can be made invisible in the CREATE TABLE statement or using an ALTER TABLE statement.By default columns are visible. Invisible columns can be made visible again using an ALTER TABLE statement.Any generic access of a table (such as a SELECT * FROM table or a DESCRIBE) will not show invisible columns.
General characteristics for Invisible Columns:
1. Any generic access of a table (such as a SELECT * FROM table or a DESCRIBE) will not show invisible columns.
2. The database usually stores columns in the order in which they were listed in the CREATE TABLE statement. If you add a new column to a table, then the new column becomes the last column in the table’s column order. When a table contains one or more invisible columns, the invisible columns are not included in the column order for the table.
3.Invisible columns are not seen unless specified explicitly in the SELECT list.
Create Table with INVISIBLE column
SQL> CREATE TABLE test1 (a INT, b INT INVISIBLE, c INT Not NULL);
Table created.
SQL> desc test1;
Name Null? Type
—————————————– ——– —————————-
A NUMBER(38)
C NOT NULL NUMBER(38)
SQL> select COLUMN_NAME,COLUMN_ID,HIDDEN_COLUMN from user_tab_cols where table_name =’TEST1′;
COLUMN_NAME COLUMN_ID HIDDEN_COLUMN
————— ———- —————
C 2 NO
B YES
A 1 NO
The invisible column wont be displayed in a DESCRIBE statement. The column id for an invisible (or hidden ) column will be NULL.
Changing the column to visible / invisible using the ALTER TABLE statement
SQL> ALTER TABLE test1 MODIFY (b VISIBLE);
Table altered.
While inserting data into table with INVISIBLE Columns, proper care need to be taken.
Otherwise,data will be inserted to unexpected columns.
Can you be more specific about the content of your enticle? After reading it, I still have some doubts. Hope you can help me.
Chương trình giới thiệu bạn bè tại 888slot cực kỳ hấp dẫn: mỗi người bạn mời thành công, bạn nhận ngay 100.000 VNĐ + 1% hoa hồng trọn đời trên mọi giao dịch của họ. TONY01-06S