函数function
函数是有返回值。-只能有一个返回值。 函数:一般情况下是用来计算并返回一个计算结果;
--创建函数语法
create [or replace] function [schema.]function_name
(函数参数列表) --参数有IN、OUT、IN OUT三种类型;IN代表需要输入的参数,OUT代表要返回的参数,IN OUT代表即是输入参数也是返回参数。
return datetype--返回类型
[is | as ]---任选一个,后面跟pLSQL代码块
[declare]--有参数时使用关键字
begin
--执行的SQL
end;
--调用函数
select f1() from dual;
declare
v_name varchar2(30);
begin
--直接调用值调用
v_name:=f1();
DBMS_OUTPUT.PUT_LINE('name is'||v_name);
end;
存储过程procedure
存储过程是通过参数返回的,可以有多个或者没有
存储过程: 一般是用来完成特定的数据操作(比如修改、插入数据库表或执行某些DDL语句等等)
--procedure语法 关键字用来创建或覆盖一个原有的存储过程。
create or replace procedure myDemo01 --myDemo01 自定义的存储过程的名字。
as --关键字。
/*注:
在存储过程(PROCEDURE)和函数(FUNCTION)中没有区别;
在视图(VIEW)中只能用AS不能用IS;
在游标(CURSOR)中只能用IS不能用AS。
*/
begin--:关键字。
dbms_output.put_line('hello word, my name is stored procedure'); 输出内容。
end;--关键字。
--存储过程的调用
declare
begin
myDemo01;
end;
begin
myDemo01; --在此处也可使用myDemo01();完成存储过程的调用
end;
call myDemo01();--call 存储过程名可完成调用,注意括号不能少