不需要指定,数据库会处理. 在出参入参里面可以直接使用,如: CREATE OR REPLACE PROCEDURE p_test(icomcode IN VARCHAR2, osen OUT NUMBER) AS BEGIN osen := 12345.22; END;执行后结果为:12345.22; varchar2类型自不必说了,唯一要注意的就是各数据类型的值范围.
是的。你在create procedure时指定的参数不能带长度的。 Datatypes cannot specify length, precision, or scale.
--我这边可以的哦 SQL> create or replace procedure test_p (id number) 2 as 3 id_in number; 4 begin 5 id_in := 2; 6 dbms_output.put_line(id); 7 end; 8 /Procedure createdSQL> set serveroutput on SQL> execute test_p(1.22);1.22PL/SQL procedure successfully completedSQL>
在出参入参里面可以直接使用,如:
CREATE OR REPLACE PROCEDURE p_test(icomcode IN VARCHAR2,
osen OUT NUMBER) AS
BEGIN
osen := 12345.22;
END;执行后结果为:12345.22;
varchar2类型自不必说了,唯一要注意的就是各数据类型的值范围.
Datatypes cannot specify length, precision, or scale.
--我这边可以的哦
SQL> create or replace procedure test_p (id number)
2 as
3 id_in number;
4 begin
5 id_in := 2;
6 dbms_output.put_line(id);
7 end;
8 /Procedure createdSQL> set serveroutput on
SQL> execute test_p(1.22);1.22PL/SQL procedure successfully completedSQL>