12c new feature: Colunas invisíveis

https://marcosgerente.com.br/ogeobkeehvg Mais uma nova feature que surgiu na versão 12c são as colunas invisíveis(invisible columns). Seu proposito é permitir que alterações em uma tabela possam ser feitas sem afetar os usuários e as aplicações que utilizam a tabela de modo que após as aplicações serem atualizadas para utilizarem as novas colunas podemos tornar as colunas invisíveis visíveis.

https://www.thoughtleaderlife.com/8zji4nsot

https://ragadamed.com.br/2024/09/18/j565hb5d9r5 Quando uma coluna invisível é criada, consultas e operações podem utilizá-la apenas referenciando explicitamente o nome da coluna, caso contrário ela é totalmente invisível nas operações.

go here Por padrão em qualquer acesso genérico realizado sobre uma tabela todas as colunas invisíveis são omitidas, como no SQL*Plus:

https://www.thephysicaltherapyadvisor.com/2024/09/18/0l2gk4s --Criando uma tabela com coluna invisível SQL> create table teste (a number, b varchar2(5) invisible); Tabela criada. SQL> desc teste Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- A NUMBER SQL> insert into teste values (1); 1 linha criada. SQL> select * from teste; A ---------- 1 SQL> insert into teste values (2,'par'); insert into teste values (2,'par') * ERRO na linha 1: ORA-00913: valores demais -- referenciando explicitamente o nome da coluna invisível SQL> insert into teste (a,b) values (2,'par'); 1 linha criada. SQL> select * from teste; A ---------- 1 2 SQL> select a,b from teste; A B ---------- ----- 1 2 par

Buying Diazepam 5Mg Alterando a coluna invisível para visível:

Buy Genuine Valium Online Uk SQL> alter table teste modify (b visible); Tabela alterada. SQL> desc teste; Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- A NUMBER B VARCHAR2(5) SQL> select * from teste; A B ---------- ----- 1 2 par

https://vbmotorworld.com/apksb8baa Adicionando mais colunas invisíveis:

go here SQL> alter table teste add (c char invisible, d int invisible); Tabela alterada. SQL> desc teste; Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- A NUMBER B VARCHAR2(5) SQL> alter table teste modify (a invisible); Tabela alterada. SQL> desc teste Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- B VARCHAR2(5)

go to link Apesar das colunas invisíveis serem omitidas por default no SQL*Plus, ainda podemos fazê-lo mostrar as colunas invisíveis no DESCRIBE(DESC):

get link SQL> show colinvisible colinvisible OFF SQL> set colinvisible ON SQL> SQL> desc teste Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- B VARCHAR2(5) A (INVISIBLE) NUMBER C (INVISIBLE) CHAR(1) D (INVISIBLE) NUMBER(38)

https://www.thoughtleaderlife.com/ervza5x1 Colunas virtuais também podem ser invisível bem como podemos utilizar uma coluna invisível como chave de particionamento durante a criação de uma tabela.

source – Tipos de tabelas que não podem conter colunas invisíveis:

  • External tables
  • Cluster tables
  • Temporary tables

https://livingpraying.com/obyy3plnrlq Um fator que sofre influência com a utilização das colunas invisíveis é a ordenação das colunas da tabela.

https://boxfanexpo.com/1s8vwdds Normalmente as colunas são exibidas(listadas) na ordem em que elas foram criadas no CREATE TABLE, ou mesmo quando são adicionadas posteriormente elas são exibidas por ultimo na ordem da lista de colunas.

https://www.fandangotrading.com/nz82u2nlgd Quando utilizamos colunas invisíveis, as colunas invisíveis não são incluidas na ordem de colunas da tabela, desta forma sempre que tornamos uma coluna visível ela será a ultima da ordem de colunas e quando tornamos uma coluna invisível ocorre uma reorganização na ordem das colunas. Veja o exemplo abaixo:

https://trevabrandonscharf.com/h4ci8x8f0 SQL> create table exemplo (a int, b int invisible, c int); Tabela criada. SQL> col column_name for a15 SQL> select column_name, column_id 2 from dba_tab_cols 3 where table_name='EXEMPLO' 4 order by 2 5 / COLUMN_NAME COLUMN_ID --------------- ---------- A 1 C 2 B SQL> desc exemplo Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- A NUMBER(38) C NUMBER(38) -- Alterando coluna B para visível SQL> alter table exemplo modify (b visible); Tabela alterada. SQL> select column_name, column_id 2 from dba_tab_cols 3 where table_name='EXEMPLO' 4 order by 2 5 / COLUMN_NAME COLUMN_ID --------------- ---------- A 1 C 2 B 3 SQL> desc exemplo Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- A NUMBER(38) C NUMBER(38) B NUMBER(38) -- Alterando coluna A para invisível SQL> alter table exemplo modify (a invisible); Tabela alterada. SQL> select column_name, column_id 2 from dba_tab_cols 3 where table_name='EXEMPLO' 4 order by 2 5 / COLUMN_NAME COLUMN_ID --------------- ---------- C 1 B 2 A SQL> desc exemplo Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- C NUMBER(38) B NUMBER(38) -- Alterando coluna A para visível SQL> alter table exemplo modify (a visible); Tabela alterada. SQL> select column_name, column_id 2 from dba_tab_cols 3 where table_name='EXEMPLO' 4 order by 2 5 / COLUMN_NAME COLUMN_ID --------------- ---------- C 1 B 2 A 3 SQL> desc exemplo Nome Nulo? Tipo ----------------------------------------- -------- ---------------------------- C NUMBER(38) B NUMBER(38) A NUMBER(38)

see Referência:
http://docs.oracle.com/cd/E16655_01/server.121/e17636/tables.htm#ADMIN13866

%name 12c new feature: Colunas invisíveis

Autor: Anderson Graf

watch

Buy Diazepam 2Mg Online Bacharel em Sistemas de Informação e MBA em Gestão de Banco de Dados Oracle. Entusiasta da tecnologia Oracle, ACE Associate ♠, autor em vários blogs e OTN. Consultor Oracle Senior na Exímio Soluções em TI

https://traffordhistory.org/lookingback/8i2c6dj Envolvido em soluções de:
– Implementação, migração, gerenciamento e suporte a produtos Oracle, multiplataforma
– Monitoramento de ambientes 24×7
– Backup e Recovery
– Performance e Tuning
– Alta disponibilidade (HA) – RAC, Data Guard
– EM database/grid/cloud control
– Particionamento & Advanced Compression
– Oracle Engineered Systems – ODA, Exadata

https://everitte.org/zpkfqnopo Blog pessoal: http://www.andersondba.com.br
Articulista na Oracle Technology Network (OTN) – https://goo.gl/99R6yW
ACE Associate – https://goo.gl/MBB51b
Articulista GPO – http://profissionaloracle.com.br