mardi 14 septembre 2010

Créer un utilisateur sous SQL Plus.

Voici la méthode complète et paramétrable pour créer un utilisateur sous SQL Plus :

SET VERIFY OFF
ACCEPT passwd PROMPT 'Entrer le mot de passe pour l'utilisateur SYSTEM : ' hide
ACCEPT nom_bd PROMPT 'Entrer le nom de la BD ou la chaine de connexion . Default is [LOCAL] : '

REM Connect
connect SYSTEM/&passwd@&nom_bd
ACCEPT username PROMPT 'Entrer le nouveau utilisateur : '
ACCEPT passwd_user PROMPT 'Entrer le mot de passe : ' HIDE
PROMPT ' Tablespaces de votre BD :'
SELECT TABLESPACE_NAME FROM DBA_TABLESPACES;
ACCEPT def_tbs PROMPT 'Entrer tablespace par défaut: '
ACCEPT tmp_tbs PROMPT 'Entrer tablespace temporaire: '
ACCEPT u_quota PROMPT 'Entrer quota (exemple 100K, ou 1M, ou UNLIMITED): '
ACCEPT quota_tbs PROMPT ' Tablespace: '

CREATE USER &username
IDENTIFIED BY &passwd_user
DEFAULT TABLESPACE &def_tbs
TEMPORARY TABLESPACE &tmp_tbs
QUOTA &u_quota ON &quota_tbs;

GRANT CONNECT, RESOURCE TO &username;

Si vous travaillez avec l'interface graphique de TOAD ou PL/SQL Developer, ça serait très facile de créer un utilisateur.

Abed

jeudi 2 septembre 2010

Extraire la définition des objets depuis une BD.

Il existe un moyen pour extraire toutes les définitions des objets de la BD (stucture des tables, index, tablespaces, contraintes, etc...) en utilisant un package DBMS_METADATA ainsi qu'une méthode GET_DDL qui permet d'envoyer les données formatées en SQL ou XML, dont voici la syntaxe:

Sous SQL Plus ou PL/SQL Developer, faites ceci:
SET HEAD OFF
SET LONG 1000
SET PAGES 0

SELECT DBMS_METADATA.GET_DDL('TABLE','EMPLOYES') From DUAL;

Pour extraire les données avec le format XML, il suffit de changer GET_DDL par GET_XML.

Abed