请选择 进入手机版 | 继续访问电脑版

12360技术网 - 专业IT技术发表平台

 立即注册  找回密码
查看: 2422|回复: 4

Oracle存储过程详细教程

[复制链接]

10

主题

18

帖子

208

积分

中级会员

Rank: 3Rank: 3

积分
208
发表于 2020-1-27 03:09:42 | 显示全部楼层 |阅读模式
Oracle存储过程详细教程
  1.    点关注不迷路,欢迎再访!               
复制代码
目录


一 .创建存储过程语法
  1. create or replace procedure 存储过程名asbegin  ----------------------------end;
复制代码
  1. 注:   在存储过程(PROCEDURE)和函数(FUNCTION)中没有区别;   在视图(VIEW)中只能用AS不能用IS;   在游标(CURSOR)中只能用IS不能用AS。
复制代码
二.输出案例
  1. create or replace procedure myDemo01asbegin  dbms_output.put_line('hello word, my name is stored procedure');end;
复制代码
as:关键字。
begin:关键字。
dbms_output.put_line(‘hello word, my name is stored procedure’); 输出内容。
end;关键字。

三.调用存储过程

3.1 声明declare关键字
  1. declarebegin  myDemo01;end;
复制代码
3.2不声明declare关键字
  1. begin  myDemo01; --在此处也可使用myDemo01();完成存储过程的调用end;
复制代码
3.3call
  1. call myDemo01();--call 存储过程名可完成调用,注意括号不能少
复制代码
执行的结果如下所示:

四.带有参数的存储过程
  1. create or replace procedure myDemo02(name in varchar,age in int)asbegin  dbms_output.put_line('name='||name||', age='||age);end;
复制代码
注:在调用存储过程时,如果存储过程没有参数,调用时括号()可以不带。
五.in,out参数问题
  1. create or replace procedure myDemo04(name out varchar,age in int)asbegin    dbms_output.put_line('age='||age);    select 'ex_sunqi' into name from dual;end;declare   name varchar(10);   age int;begin   myDemo04(name=>name,age=>25);   dbms_output.put_line('name='||name);end;
复制代码
注:in代表输入,out用于输出,参数默认类型是in类型。
执行的结果如下所示:

六.异常写法
  1. create or replace procedure myDemo03asage int;begin  age:=1/0;  dbms_output.put_line(age);  --异常  exception when others then    dbms_output.put_line('error');end;call myDemo03();
复制代码
执行的结果如下所示:

七.循环

7.1while 循环
  1. create or replace procedure myDemo5as  n_count number := 0;begin  while n_count < 5 loop    dbms_output.put_line(n_count);    n_count := n_count + 1;  end loop;end; begin  myDemo5;end;
复制代码
执行的结果如下所示:

7.2for循环

[code]create or replace procedure myDemo06asbegin FOR USE in (select * from T_USER_INFO) loop     if (USE.id

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x




上一篇:数据库优化,以实际SQL入手,带你一步一步走上SQL优化之路
下一篇:快速回顾 MySQL:全文本搜索
回复

使用道具 举报

0

主题

14

帖子

304

积分

中级会员

Rank: 3Rank: 3

积分
304
发表于 2020-1-28 17:45:37 | 显示全部楼层
这个帖子不回对不起自己![www.12360.co]
回复

使用道具 举报

0

主题

18

帖子

388

积分

中级会员

Rank: 3Rank: 3

积分
388
发表于 2020-2-6 14:23:46 | 显示全部楼层
这东西我收了!谢谢楼主![www.12360.co]
回复

使用道具 举报

0

主题

8

帖子

178

积分

注册会员

Rank: 2

积分
178
发表于 2020-2-9 17:12:00 | 显示全部楼层
其实我一直觉得楼主的品味不错!呵呵![www.12360.co]
回复

使用道具 举报

0

主题

12

帖子

262

积分

中级会员

Rank: 3Rank: 3

积分
262
发表于 3 天前 | 显示全部楼层
楼主,我太崇拜你了![www.12360.co]
社区不能没有像楼主这样的人才啊!
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

12360技术网

GMT+8, 2020-2-18 07:21 , Processed in 0.087791 second(s), 25 queries .

本网站内容收集于互联网,Www.12360.Co不承担任何由于内容的合法性及健康性所引起的争议和法律责任。 欢迎大家对网站内容侵犯版权等不合法和不健康行为进行监督和举报。

© 2019-2020 Www.12360.Co

快速回复 返回顶部 返回列表