toad debug

propósito

  • notas sobre el debug con toad

debug

pasos

  • comprobar si tenemos la versión necesario de los paquetes pl-sql que se usan
declare
probe_major_ver varchar2(10);
probe_minor_ver varchar2(10);
begin
dbms_debug.probe_version(probe_major_ver, probe_minor_ver);
dbms_output.put_line('MAJOR=' || probe_major_ver);
dbms_output.put_line('MINOR=' || probe_minor_ver);
end;
  • tiene que ser 2 como mínimo
  • en el toad de la DGA
MAJOR=2
MINOR=5
  • load object from database o cargarlo de forma normal con doble click desde el Schema Browser
  • te posicionas encima del procedimiento a depurar
  • opción de menú debug step over o mayúsculas + F8
toad lanzar depuración
  • compilar objetos referenciados
  • set parameters
    • pongo el parámetro directamente en el procedimiento
  • step over
  • Mayúsculas + F7 para paso a paso
  • Mayúsculas + F8 para saltar sobre un procedimiento
  • Mayúsculas + F10 para salir del procedimiento donde esta la ejecución y volver al anterior
  • es más sencillo que con PL-SQL Developer

útiles

  • procedimiento para probar
CREATE OR REPLACE PROCEDURE loopproc (inval NUMBER)

IS
  tmpvar   NUMBER;
  tmpvar2   NUMBER;
  total     NUMBER;
BEGIN
  tmpvar := 0;
  tmpvar2 := 0;
  total := 0;
  FOR lcv IN 1 .. inval
  LOOP
      total := 2 * total + 1 - tmpvar2;
      tmpvar2 := tmpvar;
      tmpvar := total;
  END LOOP;
  DBMS_OUTPUT.put_line ('TOTAL IS: ' || total);
END loopproc;
/