This post is also available in: English
O Oracle 12c está disponível agora e temos a capacidade de alterar constantemente o container ativo da sessão corrente.
Se você está utilizando o SQLPlus, é fácil verificar usando o comando "show con_name":
[oracle@syslogfubddsne001 ~]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Wed Feb 19 11:42:19 2014 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options SQL> show con_name CON_NAME ------------------------------ CDB$ROOT SQL> ALTER SESSION SET CONTAINER = PDB$SEED; Session altered. SQL> show con_name CON_NAME ------------------------------ PDB$SEED SQL>
No entanto, quando utilizamos outro client, a melhor forma de verificar é através da função "SYS_CONTEXT", já que o comando "show con_name" pode não funcionar:
Connected to Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 Connected as SYS SQL> select SYS_CONTEXT('USERENV', 'CON_NAME') NAME FROM DUAL; NAME -------------------------------------------------------------------------------- CDB$ROOT SQL> ALTER SESSION SET CONTAINER = PDB$SEED; Session altered SQL> select SYS_CONTEXT('USERENV', 'CON_NAME') NAME FROM DUAL; NAME -------------------------------------------------------------------------------- PDB$SEED SQL>
Também é possível usar "SYSCONTEXT('USERENV', 'CON_ID')" se o seu objetivo for obter o container ID!
Gostou? Não deixe de comentar ou deixar um 👍!