Created: 2024-09-08 dom 17:51
create or replace function MCD(n1 number,n2 number) return number
is
a number;
b number;
res number;
begin
if (n1>n2) then
a := n1;
b := n2;
else
a := n2;
b := n1;
end if;
while( b!=0 ) loop
res := b;
b := mod(a,b);
a := res;
end loop;
return res;
end;
/
f5
o botón derecho sobre los números de línea
F8
: Ejecutar la siguiente línea, sin entrar en funcionesF7
: Ejecutar la siguiente línea, entrando en funcionesF9
Data
DBMS_DEBUG
en vez de DBMS_DEBUG_JDWP
(evita conexión inversa desde el servidor)Executing PL/SQL: ALTER SESSION SET PLSQL_DEBUG=TRUE Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( '192.168.1.119', '34685' ) ORA-01031: insufficient privileges ORA-06512: at "SYS.DBMS_DEBUG_JDWP", line 68 ORA-06512: at line 1 This session requires DEBUG CONNECT SESSION and DEBUG ANY PROCEDURE user privileges.
grant debug connect session to USUARIOQUEDEBUGEA;
grant debug any procedure to USUARIOQUEDEBUGEA;
begin
dbms_network_acl_admin.append_host_ace
(host=>'IP DEL CLIENTE QUE DEBUGUEA',
ace=> sys.xs$ace_type( privilege_list=>sys.XS$NAME_LIST('JDWP') ,
principal_name=>'USUARIO QUE DEBUGUEA',
principal_type=>sys.XS_ACL.PTYPE_DB) );
end;
/
grant execute on DBMS_DEBUG_JDWP to USUARIOQUEDEBUGEA;
create or replace function MCD(n1 number,n2 number) return number
is
a number;
b number;
res number;
begin
if (n1>n2) then
dbms_output.put_line( 'n1 es mayor' );
a := n1;
b := n2;
else
dbms_output.put_line( 'n2 es mayor' );
a := n2;
b := n1;
end if;
while( b!=0 ) loop
dbms_output.put_line( 'Al principio: a:' || a || ' b: ' || b );
res := b;
b := mod(a,b);
a := res;
dbms_output.put_line( 'Al final: a:' || a || ' b: ' || b );
end loop;
dbms_output.put_line( 'retorno:' || res );
return res;
end;