Oracle数据库--PL/SQL存储过程和函数的建立和调用

1.存储过程建立的格式:

create or replace procedure My_Procedure is
begin
--执行部分(函数内容);
end;
/

例子:(以hr表为例)

create or replace procedure insert_procedure is
begin
insert into JOBS values('MY_JOB','My Job',5000,10000);
end;
/

2.存储过程调用

begin
insert_procedure();
end
/

3.函数的建立格式:

CREATE OR REPLACE FUNCTION function_name(arg1 type1)
RETURN return_type
is
--类型.变量的声明部分
BEGIN
--执行部分
RETURN expression
EXCEPTION
--异常处理部分
END function_name;

例子:(以hr表为例)

create or replace function update_min_salary return NUMBER
is
n NUMBER;
begin
update JOBS set MIN_SALARY=5000 where MIN_SALARY=4000;
n:=sql%rowcount;
dbms_output.put_line('影响的行数:'||n);
return n;
end;
/

4.调用函数

declare
m NUMBER;
begin
m:=update_min_salary();
DBMS_OUTPUT.PUT_LINE('从函数接收到调用此函数影响的函数为:'||m);
end;
/

5.1

注意:如果要在窗口里显示服务器输出信息,要先执行这句:set serveroutput on;

5.2

最后一定要记得用commit提交,否则执行结果不会更新会数据库。

posted @   Sunnier  阅读(2672)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示