Oracle

ID #1114

Problèmes des Grants sur les Truncates sous Oracle

Sous Oracle, le TRUNCATE nécessite des droits de lourds de "DROP ANY TABLES" pour un user. 

Un contournement intéressant est de faire une procédure stockée spécifique au truncate. 

 

Voici un exemple de procédure  : 

create or replace procedure TEST.TRUNCATE_ELEMENT( p_element in varchar2 )

as

begin

   execute immediate 'TRUNCATE TABLE ' || p_element;

end;

 

Ensuite il faudra "granter" la procédure : 

GRANT EXECUTE ON TEST.TRUNCATE_ELEMENT TO USERTEST ;

 

Voici un exemple d’appel :

BEGIN

  TEST.TRUNCATE_ELEMENT('TEST.WRK_RETOUR');

END;

Tags: oracle grant truncate

Related entries:

Dernière mise à jour: 2014-04-11 09:21
Auteur: Michel Preti
Révision: 1.0

Digg it! Imprimer cet article Envoyer à un ami version PDF
Propose a translation for Propose a translation for
Merci de noter cette entrée:

Moyenne des notes: 5 sur 5 (1 Votes)

complètement inutile 1 2 3 4 5 indispensable

Vous ne pouvez pas commenter cet enregistrement