Plsql PLS-00103:遇到符号“&&引用;应为以下情况之一时:(+;案例模式新建不为空
SQL*Plus命名参数可以在PL/SQL中使用。我想您还没有给我们发送真正的代码Plsql PLS-00103:遇到符号“&&引用;应为以下情况之一时:(+;案例模式新建不为空,plsql,Plsql,SQL*Plus命名参数可以在PL/SQL中使用。我想您还没有给我们发送真正的代码 declare v_empno empdab.eno%type:=&n; v_empdab empdab%rowtype; begin select eno, ename,doj,position,salary,comm,address into v_empdab from empdab where eno=v_empno; dbms_output.put_li
declare
v_empno empdab.eno%type:=&n;
v_empdab empdab%rowtype;
begin
select eno, ename,doj,position,salary,comm,address into v_empdab from empdab where eno=v_empno;
dbms_output.put_line(v_empdab.eno||v_empdab.ename||v_empdab.doj||v_empdab.position||v_empdab.salary||v_empdab.comm||v_empdab.address);
end ;
Script start cc.sql
accept n prompt 'Enter value for n :'
set serveroutput on
declare
v_v test.v%type := &n;
r_v test%rowtype;
begin
dbms_output.put_line(v_v);
select v into v_v from test where rownum = 1;
dbms_output.put_line(v_v);
dbms_output.put_line(&n);
end;
/
End Script cc.sql
我没有发现这部分代码有任何问题,您确定这是完整的代码还是某些过程中的部分代码“&”与SQLPlus中的命名参数一起使用。但是,这里有一个PL/SQL块。我不相信您可以在PL/SQL块中使用SQLPlus命名参数,因为PL/SQL根本不理解它们。您需要这样做还有别的方法-也许把它变成一个可调用的过程?
SQL> @cc
Enter value for n :'abc'
old 2: v_v test.v%type := &n;
new 2: v_v test.v%type := 'abc';
old 9: dbms_output.put_line(&n);
new 9: dbms_output.put_line('abc');
abc
a
abc
PL/SQL procedure successfully completed.
SQL>