Bonjour tout le monde,
J'ai un problème que je n'arrive pas toujours à résoudre
J'ai une procédure PL/SQL dans un package :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
CREATE OR REPLACE package body PKG1 As
procedure create_test is
begin
execute immediate ('Create Table table1 as select * from table2') ;
end create_test;
end; |
quand j'exécute cette procédure :
1 2 3
| begin
PKG1.create_test;
end; |
il m'affiche une erreur :
ORA-01031: privilèges insuffisants
alors que si j'exécute :
1 2 3 4
|
begin
execute immediate ('Create Table table1 as select * from table2') ;
end; |
ça marche !
L'utilisateur base de données a reçu les grant explicitement ( il a aussi le grant create session et le droit d'exécuter des procédures ! )
Est ce que vous pouvez me dire où es le problème exactement ?
Merci pour votre aide
Partager