为什么 TOAD 会弄乱 dbms_output 中的输出顺序?
Why does TOAD mess up the output order in dbms_output?
我正在使用 Oracle 10.2 和 Toad for Oracle Xpert 版本 11.5.0.56
为什么此脚本在 DMBS 输出 window 中以错误的顺序打印内容?
BEGIN
FOR indx IN 1 .. 70
LOOP
dbms_output.put_line('-------------------------------------------------- TEST --------------------------------------------------');
dbms_output.put_line('INDEX: ' || indx);
dbms_output.put_line('CREATING: 3424234 - TEST - TEST.TTEST');
dbms_output.put_line('CREATION ORDER: ' || 10);
dbms_output.put_line('OTHER DATA IS VALID: N');
IF indx = 54 THEN
dbms_output.put_line('=======================================');
EXIT;
END IF;
END LOOP;
END;
如果您查看输出 window,它会显示以错误顺序打印的项目。按此顺序打印索引的行:
21, 22, 23, ... 54, 1, 2, ... 20
基本上它首先显示 Index = 21 的行,然后是 22,依此类推,直到它打印 Indx = 54 的行。此时它打印 Indx = 1 的行,然后是 Indx = 2,直到 20。
为什么 TOAD 没有以正确的顺序显示从 Indx = 1 到 Indx = 54 的文本?
For中间的Exit是否与此行为有关?
在 11.5.0.56 版的 TOAD 中似乎有一个 issue/bug 导致它在 DBMS 输出中打印错误的结果 window。
通过应用 11.5.2 版或更新版本的补丁程序可以修复它。
我正在使用 Oracle 10.2 和 Toad for Oracle Xpert 版本 11.5.0.56
为什么此脚本在 DMBS 输出 window 中以错误的顺序打印内容?
BEGIN
FOR indx IN 1 .. 70
LOOP
dbms_output.put_line('-------------------------------------------------- TEST --------------------------------------------------');
dbms_output.put_line('INDEX: ' || indx);
dbms_output.put_line('CREATING: 3424234 - TEST - TEST.TTEST');
dbms_output.put_line('CREATION ORDER: ' || 10);
dbms_output.put_line('OTHER DATA IS VALID: N');
IF indx = 54 THEN
dbms_output.put_line('=======================================');
EXIT;
END IF;
END LOOP;
END;
如果您查看输出 window,它会显示以错误顺序打印的项目。按此顺序打印索引的行:
21, 22, 23, ... 54, 1, 2, ... 20
基本上它首先显示 Index = 21 的行,然后是 22,依此类推,直到它打印 Indx = 54 的行。此时它打印 Indx = 1 的行,然后是 Indx = 2,直到 20。
为什么 TOAD 没有以正确的顺序显示从 Indx = 1 到 Indx = 54 的文本?
For中间的Exit是否与此行为有关?
在 11.5.0.56 版的 TOAD 中似乎有一个 issue/bug 导致它在 DBMS 输出中打印错误的结果 window。
通过应用 11.5.2 版或更新版本的补丁程序可以修复它。