set serverout on
var v_rol number
var v_ar varchar2(100)
var v_name varchar2(100)
execute ('343',:v_rol,:v_ar,:v_name);
print v_rol
pint v_ar
print v_name
var v_rol number
var v_ar varchar2(100)
var v_name varchar2(100)
execute ('343',:v_rol,:v_ar,:v_name);
print v_rol
pint v_ar
print v_name
ERROR 位于第 1 行:
ORA-06550: 第 1 行, 第 7 列:
PLS-00103: 出现符号 "("在需要下列之一时:
begin case declare exit for
goto if loop mod null pragma raise return select update while
with <an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
<a single-quoted SQL string> pipe
符号 "case" 被替换为 "(" 后继续。
ORA-06550: 第 1 行, 第 39 列:
PLS-00103: 出现符号 ";"在需要下列之一时:
* & = - + < / > at in is mod
not rem when <an exponent (**)> <> or != or ~= >= <= <> and
or like between overlaps || year DAY_ V_ROL
----------V_AR
--------------------------------------------------------------------------------------------------------------------------------V_NAME
--------------------------------------------------------------------------------------------------------------------------------
2 as
3 str string(100);
4 v_i integer;
5 begin
6 dbms_output.put_line(to_char(v_in));
7 v_out:=to_char(v_in);
8 end test_out;
9 /过程已创建。SQL> set serveroutput o
SQL> declare
2 out string(100);
3 begin
4 test_out(999,out)
5* end;
SQL> /
999PL/SQL 过程已成功完成。