Un paramètre utile pour changer le schéma courant dans oracle est d'utiliser la commande suivante :
-->
alter session set current_schema=nom_schema
Cela permet de "switcher" d'un schema à un autre;l'exemple suivant montre comment :
C'est la même chose qui se passe quand vous ajoutez la clause fromuser touser lors d'un import, l'ajout du paramètre SHOW=Y permet de le vérifier :
l'utilisation de cette commande a quelques restrictions d'usage par exemple; dans l'instruction rename qui ne supporte pas le nom de schéma dans sa syntaxe vous ne pouvez pas contourner cette limitation en utilisant le paramètre CURRENT_SCHEMA un exemple :
oracle@ESS3:~> sqlplus "/as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on Mon Dec 14 09:47:27 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connecte a :
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> show user
USER est "SYS"
SQL> select table_name from dba_tables where owner='TEST';
TABLE_NAME
------------------------------
TEST_TABLE
SQL> alter session set current_schema=test;
Session modifiee.
SQL> rename TEST_TABLE to matable;
rename TEST_TABLE to matable
*
ERREUR a la ligne 1 :
ORA-03001: cette option n'est pas prise en charge
oracle@ESS3:~> sqlplus "/as sysdba"
SQL*Plus: Release 11.1.0.6.0 - Production on Mon Dec 14 09:47:27 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connecte a :
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> show user
USER est "SYS"
SQL> select table_name from dba_tables where owner='TEST';
TABLE_NAME
------------------------------
TEST_TABLE
SQL> alter session set current_schema=test;
Session modifiee.
SQL> rename TEST_TABLE to matable;
rename TEST_TABLE to matable
*
ERREUR a la ligne 1 :
ORA-03001: cette option n'est pas prise en charge
-->
-->