Ver Mensaje Individual
  #3 (permalink)  
Antiguo 30/01/2012, 08:19
leo_star
 
Fecha de Ingreso: agosto-2011
Mensajes: 20
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: pequeño código, gran error :( ?

Edito:

la sintaxys correcta es:

Código SQL:
Ver original
  1. consulta := 'revoke ' ||v_rol || ' from ' || v_usuario;
  2. EXECUTE IMMEDIATE consulta ;

Saludos!

Cita:
Iniciado por matanga Ver Mensaje
Para ejecutar sentencias DDL (create table, create user, grant, revoke, etc) dentro de un procedimiento tienes que utilizar SQL dinámico, por ejemplo:

Código:
create procedure p1 as
begin
 execute immediate 'revoke nombre_role from usuario';
end;
/
Saludos
Muchas gracias!
solo me queda una duda; como puedo hacer ese REVOKE de forma dinamica?

Código SQL:
Ver original
  1. EXECUTE immediate 'revoke VAR_1 from VAR_2';


lo que acabo de ponerno me funciona..tambien intento con
Código SQL:
Ver original
  1. EXECUTE immediate 'revoke'.VAR1 .'from'. VAR2;
y tampoco nada...


ojala me puedas ayudar, de todas maneras..
muchas gracias por tu ayuda, me fue muy util!
saludos!

Última edición por leo_star; 30/01/2012 a las 12:33