Bonjour,
je souhaite créer n utilisateurs avec pour chacun la même base.
Je procède comme suit:
Je créé un utilisateur user_i, je me connecte avec ses ids et je lance un script pour la base.

Voici ma boucle:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
for i in 1..n loop
 dbms_output.put_line('CREATION DE L''UTILISATEUR '||i);
 execute immediate 'conn system/manager';
 execute immediate 'DROP USER user'||i' CASCADE';
 execute immediate 'CREATE USER user'||i' IDENTIFIED BY pass'||i;
 execute immediate 'GRANT CONNECT, DBA, RESOURCE TO user'||i;
 execute immediate 'conn user'||i||'/pass'||i;
 execute immediate 'start /opt/oracle/scripts/db.sql';
end loop;
J'ai l'erreur suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
declare
*
ERROR at line 1:
ORA-00900: invalid SQL statement
ORA-06512: at line 23
à priori l'erreur vient du execute immediate 'connect system/manager'
Quelqu'un pourrait me dire comment contourner cela ?

J'ai trouvé ceci sur le web mais ça ne m'a pas trop convaincu :
http://www.thescripts.com/forum/thread65749.html

Merci d'avance.