Oracle
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:
Auteur: Michel Preti
Révision: 1.0
Vous ne pouvez pas commenter cet enregistrement