plsql 调用方法

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调用方法,前提是方法已经创建了的。

我来评几句
登录后评论

已发表评论数()

相关站点

+订阅
热门文章