Oracle Database 12c: Görünmez Kolonlar (Invisible Columns)

Oracle 12c ile gelen güzel özelliklerden biri; tablo içindeki kolonlar görünmez (invisible) duruma getirile bilmektedir. İnvisible durumuna getirilen bir kolon select sorgularında görünmez. İnsert veya update komutlarında kullanıla bilir.
Yeni bir tablo oluştururken tablo kolonlarının visible/invisible yapılması:

CREATE TABLE table_name(
  columna NUMBER,
  columnb NUMBER,
  columnc NUMBER [VISIBLE/INVISIBLE]
);

Varolan tablo kolonunun visible/invisible yapılması: 

ALTER TABLE table_name MODIFY columnc [VISIBLE/INVISIBLE];

Invisible olarak ayarlanan kolonları görmek için “desc tabloadi” komutundan önce colinvisible parametresini set etmek gerekiyor.

SQL> SET COLINVISIBLE ON;
SQL> DESC tablo_name;
Name                Null? Type
------------------- ----- ------
COLUNA1                   NUMBER
COLUNA2                   NUMBER
COLUNA4                   NUMBER
COLUNA3 (INVISIBLE)       NUMBER

Son olarak invisible durumundaki tabloya kayıt eklerken kolon isimlerinin belirtilmesi gerekmektedir.

INSERT INTO table_name (columna1, columnb1, columnc1, columnd1) VALUES('1', '2', '3', '4');

Aşağıdaki şekilde kullanım hata verecektir.

INSERT INTO table_name VALUES('1', '2', '3', '4');

Leave a Reply

Your email address will not be published.