私はあなたができるとは思わないV$SESSION_LONGOPS
ビューを照会することにより、あなたはその後、monitory進歩をすることができ、別のSQL * Plusセッションから
CREATE PROCEDURE process_structures
AS
<<other variable declarations>>
rindex BINARY_INTEGER;
slno BINARY_INTEGER;
totalwork NUMBER := y; -- Total number of structures
worksofar NUMBER := 0; -- Number of structures processed
BEGIN
rindex := dbms_application_info.set_session_longops_nohint;
FOR i IN (<<select structures to process>>)
LOOP
worksofar := worksofar + 1;
dbms_application_info.set_session_longops(
rindex => rindex,
slno => slno,
op_name => 'Processing of Molecular Structures',
sofar => worksofar ,
totalwork => totalwork,
target_desc => 'Some description',
units => 'structures');
<<process your structure with your existing code>>
END LOOP;
END;
ような何かを行うことができます。私がdbms_outputを理解する限り、それはちょうどそのようには動作しません。
putを使用して、何かが起こっていることを知るために1000ドットごとに1つのドットと改行をエコーすることをお勧めします。
+1、素敵なテンプレートの例。 – DCookie