无法从 cmd PL/SQL 中的简单查询中获得正确的结果
Posted
技术标签:
【中文标题】无法从 cmd PL/SQL 中的简单查询中获得正确的结果【英文标题】:Unable to get correct result from simple query in cmd PL/SQL 【发布时间】:2021-09-29 22:43:52 【问题描述】:我试图打印“Hello World”,但我继续返回数字 7。此外,返回 7 后,如果不重新启动 cmd 窗口,我将无法运行另一个文件。如果我按回车键,数字会增加 1。请解释为什么会发生这种情况以及可能的纠正方法。
【问题讨论】:
【参考方案1】:将/
放在文件末尾的新行上以终止 PL/SQL 匿名块。
SET SERVEROUTPUT ON;
DECLARE
name VARCHAR2(20);
BEGIN
name := 'Hello World';
DBMS_OUTPUT.PUT_LINE(name);
END;
/
SQL/Plus 已读取您的文件,但未找到 PL/SQL 块的语句终止符,因此它继续要求更多输入以完成语句。它期望在新行上有一个 /
字符(语句的第 7 行,第一行是 DECLARE
,因为 SET
命令是不同的语句),当您按下回车键时,它会移动到行语句的第 8 行并且仍然期待终止符,因此要求更多输入(并在第 9、10 和 11 行重复)。
您可以按/
然后输入 SQL/Plus 但最好修复文件以使其包含完整的语句。
【讨论】:
非常感谢您的精彩解释!以上是关于无法从 cmd PL/SQL 中的简单查询中获得正确的结果的主要内容,如果未能解决你的问题,请参考以下文章