declare
v_str1 varchar2(80);
begin
v_str1 := 'test';
print :v_str1;
end
当我运行它只是在SQL工作表中使用的SQLDeveloper我得到这个:
Bind Variable "v_str1" is NOT DECLARED
anonymous block completed
declare
v_str1 varchar2(80);
begin
v_str1 := 'test';
print :v_str1;
end
当我运行它只是在SQL工作表中使用的SQLDeveloper我得到这个:
Bind Variable "v_str1" is NOT DECLARED
anonymous block completed
明白了:
set serveroutput on
declare
v_str1 varchar2(80);
begin
v_str1 := 'test';
dbms_output.put_line(v_str1);
end;
尝试
declare
v_str1 varchar2(80);
begin
v_str1 := 'test';
print v_str1;
end
给出:ORA-06550 – NitroxDM 2009-10-21 00:47:32
绑定变量的形式语法:VARNAME主要用于SQL * Plus(我认为动态SQL的绑定变量除外)。 对于SQL *开发,PL/SQL开发人员,或其他应用程序,有 “&” 进行变量替换:
declare
v_str1 varchar2(80);
begin
v_str1 := &v_str;
print v_str1;
end
编辑: 我的坏,为Oracle SQL代码*开发人员应该已经:
set serveroutput on;
declare
v_str1 varchar2(80);
begin
v_str1 := '&v_str';
dbms_output.put_line(v_str1);
end;
您必须选择所有内容并执行它。结果将显示在“脚本输出”面板中。
它提示输入V_str的值,然后抛出一个错误ORA-06550。如果您将其更改为打印:V_str1;你会得到绑定变量“v_str1”不是DECLARED。 – NitroxDM 2009-10-21 00:46:23
print
不是PLSQL功能。如果你想获得的输出,你可以使用dbms_output.put_line(v_str1);
set serveroutput on;
declare v_str1 varchar2(80);
begin
v_str1 := 'test';
dbms_output.put_line(v_str1);
end;
:v_str1是绑定变量,但你必须在PLSQL没有申报。当你声明它时,你必须使用VARIABLE关键字。
什么是“印刷”?我知道没有该名称的PL/SQL命令。 – 2009-10-21 13:53:02