1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
DECLARE /*je declare les variables dont j'ai besoin*/
var1 varchar(50),
var2 varchar (50),
login varchar (12),
pwd varchar (12);
DECLARE /*je declare mon curseur qui contient le résultat de la requette suivante*/
curseur CURSOR for
SELECT nom_conducteur, penom_conducteur
FROM conducteur
ORDER BY nom_conducteur;
BEGIN
OPEN curseur;
FETCH curseur INTO @login, @pwd;/*je remplis les variables qui vont contenir nom_conducteur dans login et prenom_conducteur dans pwd*/
WHILE @@FETCH_STATUS=0
/*la varible 1 va contenir la synthaxe de création de compte*/
@var1:='create user' ||login||;
@var1:=@var1||'identified by' ||pwd;
execute immediate @var1;
/*la variable 2 va contenir la synthaxe d'attribution des droits aux comptes*/
@var2:='grant connect to' ||login;
execute immediate @var2;
CLOSE curseur;
DEALLOCATE curseur;
END; |