English 中文(简体)
在Oracle SQL Developer SQL Worksheet窗口中打印文本
原标题:
  • 时间:2008-10-10 21:35:29
  •  标签:

我正在使用Oracle SQL(在SQLDeveloper中使用SQL工作表)。 我想在我的select语句之前打印一条语句,例如:

PRINT  Querying Table1 ;
SELECT * from Table1;

我用什么来打印/显示文本输出?这不是打印,因为它给我错误:绑定变量Table1未声明。DBMS_OUTPUT.PUT_LINE是一个未知命令。(显然,我是一个经验不足的SQL开发人员和Oracle用户。必须有一些打印的同义词,但我很难在不知道它是什么的情况下找到帮助。)

最佳回答

将此翻译成中文: 输入图像说明

简单的评论:

set serveroutput on format wrapped;
begin
    DBMS_OUTPUT.put_line( simple comment );
end;
/

-- do something

begin
    DBMS_OUTPUT.put_line( second simple comment );
end;
/

你应该得到:

anonymous block completed
simple comment

anonymous block completed
second simple comment

如果您想要打印变量的结果,这里有另一个例子:

set serveroutput on format wrapped;
declare
a_comment VARCHAR2(200) := first comment ;
begin
    DBMS_OUTPUT.put_line(a_comment);
end;

/

-- do something


declare
a_comment VARCHAR2(200) := comment ;
begin
    DBMS_OUTPUT.put_line(a_comment || 2);
end;

你的输出应该是:

anonymous block completed
first comment

anonymous block completed
comment2
问题回答
PROMPT text to print

Note: must use Run as Script (F5) not Run Statement (Ctl + Enter)

主要答案遗漏了一个步骤,新安装的用户必须打开dbms输出窗口。

将其翻译为中文: 输入图像说明

然后我使用的脚本是:

dbms_output.put_line( Start );

另一个脚本:

set serveroutput on format wrapped;
begin
    DBMS_OUTPUT.put_line( jabberwocky );
end;

你可以将echo设置为开启:

set echo on
REM Querying table
select * from dual;

在SQLDeveloper中,按F5运行脚本。

您可以将文本放置在select语句中,例如...

SELECT  Querying Table1  FROM dual;

对我来说,我只能让它工作。

set serveroutput on format word_wrapped;

"包装的和包装的都出现错误:SQLPLUS命令失败 - 参数不足"

如果我省略了开始 - 结束,那么就会出现错误。所以对我来说,这是有效的(不需要其他任何东西):

set serveroutput on;
begin
DBMS_OUTPUT.PUT_LINE( testing );
end;

如果您不希望将所有的SQL语句都输出,但只想看到您脚本的容易识别的结果,您可以这样做:

打开回响

REM 我的第一张表

关闭回显。

从MyFirstTable中删除;

打开回响

REM我的第二个表格

关闭回显。

从MySecondTable中删除;

上述示例的输出将看起来像这样:

-REM 我的第一张表

删除了13行。

-REM我的第二个表格

删除了27行。





相关问题
热门标签