Oracle - connect con execute immediate?

 
Vista:

connect con execute immediate?

Publicado por Jose (3 intervenciones) el 22/04/2008 11:50:51
Wenas!!!!

tengo problemas a la hora de hacer una connexion con otro usuario desde el pakequete
de la BD. he probado varias maneras

ej :
BEGIN
v_connect := 'CONNECT ' || p_destino || '/' || p_cont || '@' || p_bd;
DBMS_SQL.parse (cur, v_connect, DBMS_SQL.native);
fdbk := DBMS_SQL.EXECUTE (cur);
DBMS_SQL.close_cursor (cur);

FOR x IN c1
LOOP
BEGIN
v_permisos :=
'REVOKE ALL ON ' || x.nombre_tabla || ' FROM ' || p_origen;
DBMS_SQL.parse (cur, v_permisos, DBMS_SQL.native);
fdbk := DBMS_SQL.EXECUTE (cur);
DBMS_SQL.close_cursor (cur);
END;
END LOOP;

DBMS_SQL.parse (cur, v_disconnect, DBMS_SQL.native);
fdbk := DBMS_SQL.EXECUTE (cur);
DBMS_SQL.close_cursor (cur);
END;

ej:
BEGIN
execute immediate
'CONNECT ' || p_destino || '/' || p_cont || '@' || p_bd;
FOR x IN c1
LOOP
BEGIN
execute immediate
'GRANT ALL ON ' || x.nombre_tabla || ' TO ' || p_origen;
END;
END LOOP;
execute immediate
'DISCONNECT';
END;

he probado estas dos maneras, los el usuario origen tiene todos los permisos sobre el
destino pero aun asi peta.
gracias por molestaros SALUDOSSSSSSSS..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder