1 create function function1
2 (v_num in table1.num%type,
3 v_name out number)
4 return varchar2(16)
5 is
6 v_none number(10,2);
7 begin
8 select name into v_name from table1 where num=v_num;
9 return v_name;
10 end function1;为什么我创建完成后,会提示“警告: 创建的函数带有编译错误”?
2 (v_num in table1.num%type,
3 v_name out number)
4 return varchar2(16)
5 is
6 v_none number(10,2);
7 begin
8 select name into v_name from table1 where num=v_num;
9 return v_name;
10 end function1;为什么我创建完成后,会提示“警告: 创建的函数带有编译错误”?
create function function1(v_num in table1.num%type)
return varchar2
is
v_name varchar2(16);
begin
select name into v_name from table1 where num=v_num;
return v_name;
end function1;
6 v_name varchar2(16);
is跟as不是等价的吗?书上的例子是:is|as说明是等价的啊?
is和as是等价的。
SQL> create or replace function function1 (
2 v_num in employees.employee_id%type,
3 v_name out number
4 ) return varchar2
5 is
6 v_none number(10,2);
7 begin
8 select first_name into v_name from employees where employee_id=v_num;
9 return v_name;
10 end;
11 /Function created
恩
谢谢VARCHAR类型不是可变长的吗?为什么会出现类型不匹配呢?
设置的是Number类型,但是return后面加的是varchar2