CREATE OR REPLACE FUNCTION
c_to_f (degree NUMBER) RETURN NUMBER IS
buffer NUMBER;
BEGIN
buffer := (degree * 9/5) + 32;
RETURN buffer;
END;
--第一种 前提方法必须创建了的,而不是临时的
select c_to_f(45) from dual;
DECLARE
a number;
b number;
c number;
FUNCTION findMax(x IN number, y IN number)
RETURN number
IS
z number;
BEGIN
IF x > y THEN
z:= x;
ELSE
Z:= y;
END IF;
RETURN z;
END;
BEGIN
a:= 23;
b:= 45;
--第二种:赋值,此时不能使用select ...from dual调用方法
c := findMax(a, b);
dbms_output.put_line(" Maximum of (23,45): " || c);
END;
/
create or replace function valid_numb(n_numb IN number) return boolean is
begin
if n_numb < 10 then
return true;
else
return false;
end if;
end;
/
declare n_test number := &Test;
begin
--第三种,放在if里面
if (valid_numb(n_test)) then dbms_output.put_line("Valid"); else dbms_output.put_line("Invalid");
end if;
end;
/
select ...from dual调用方法,前提是方法已经创建了的。