Problème de privilège étonnant !
Bonjour à tous,
J'ai un problème de privilège avec mon code PL/SQL que je n'ai pas sous SQL.
voici ma procédure dans son paquet :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| -- Create Package
CREATE OR REPLACE PACKAGE pkg IS
-- Create Table
PROCEDURE create_table (table_name IN VARCHAR2 );
END;
/
CREATE OR REPLACE PACKAGE BODY pkg IS
PROCEDURE create_table ( table_name IN VARCHAR2) IS
create_tab varchar2(100);
BEGIN
create_tab := 'CREATE TABLE ' || table_name || ' AS SELECT * FROM v$session';
EXECUTE IMMEDIATE create_tab;
END;
END;
/ |
voici ma commande :
Code:
1 2 3 4
| BEGIN
pkg.create_table( 'toto' );
END;
/ |
Mon erreur :
Citation:
Rapport d'erreur :
ORA-01031: privilèges insuffisants
ORA-06512: à "USER.PKG", ligne 14
ORA-06512: à ligne 2
01031. 00000 - "insufficient privileges"
J'ai lu que l'erreur ORA-06512 pouvait être du à une variable trop petite pour la valeur stockée. Cependant, modifier la taille de varchar2(100), n'a rien changé.
Merci d'avance pour vos réponses !