1.创建/修改

sql;">

CREATE [OR REPLACE] PROCEDURE procedure_name

[(parameter_list)]

{IS|AS}

[local_declarations]

BEGIN

executable_statements

[EXCEPTION exception_handlers]

END [procedure_name];

a.parameter_list格式如下

sql;">

parameter_name1 [in | out | in out] type,parameter_name1 [in | out] type [,........]

in 是输入参数,可以有默认值,默认值例子 emp_no in number:=7900

out 是输出参数,

b.AS/IS的区别

在视图(VIEW)中只能用AS不能用IS

在游标(CURSOR)中只能用IS不能用AS

c.local_declarations格式如下:

loacal_var1 type(limit);

如empname varchar2(20);

d.输出变量赋值

oracle 变量赋值有两种一种是直接 := 还有就是 select into

游标参数

sql;">

outcur OUT BASIC_CURSOR:

OPEN outcur FOR SELECT col1,col2 FROM tablename

e.示例

sql;">

create or replace procedure putNum(P_Date in date,P_year out varchar2) is

v_num number(8) := 1;

v_days number;

v_date date;

begin

dbms_output.put_line('intput value:' || P_year);

v_num := 1;

v_days := 1;

v_days := to_number(to_char(P_Date,'dd')); -- to_char(sysdate-20,'dd')

for i in 1 .. v_days Loop

v_date := to_date('2011/11/' || to_char(i),'yyyy/MM/dd');

--dbms_output.put_line(v_date);

end loop;

P_year := '2012';

end;

2.调用

sql;">

[EXECUTE]|[CALL] procedure_name[(parameter,…n)]

在代码块 declare 的 begin/end 中不需要 [EXECUTE]|[CALL],直接 procedure_name[(parameter,…n)]

其他外部程序需要 [EXECUTE]|[CALL]

在PL/sql中调用这个存储过程,采用了如下的代码:

sql;">

begin

Proc_Insert('hello6',25,'2005-12-24');

commit;

end;

3.显示调试信息

a.存储过程中在必要的位置添加

sql;">

DBMS_OUTPUT.put_line ('Hello World!');

b.打开DBMS_OUTPUT

sql;">

show serveroutput;

set serveroutput on;

c.测试我们的 procedure

代码如下:

exec procedure_name

oracle中procedure用法,oracle中的procedure编写和使用详解相关推荐

  1. java中move用法_【MFC】MoveWindow();函数使用详解

    CWnd::MoveWindow void MoveWindow( int x, int y, int nWidth, int nHeight, BOOL bRepaint = TRUE ); voi ...

  2. php 点号 的用法,基于php中echo用逗号和用点号的区别详解

    php 的 基于php中echo用逗号和用点号的区别详解 实例如下: echo 1+5; echo " "; echo '1+5='."1+5"." ...

  3. php 自动获取头像,PHP_WordPress中用于获取及自定义头像图片的PHP脚本详解,get_avatar()(获取头像) get_avat - phpStudy...

    WordPress中用于获取及自定义头像图片的PHP脚本详解 get_avatar()(获取头像)get_avatar() 函数用来获取置顶邮箱或者用户的头像代码,在评论列表中非常常用. 这个函数提供 ...

  4. c++中.dll与.lib文件的生成与使用的详解

    c++中.dll与.lib文件的生成与使用的详解 --------------------------------------------------------------------------- ...

  5. python跨函数调用变量_对python中不同模块(函数、类、变量)的调用详解

    首先,先介绍两种引入模块的方法. 法一:将整个文件引入 import 文件名 文件名.函数名( ) / 文件名.类名 通过这个方法可以运行另外一个文件里的函数 法二:只引入某个文件中一个类/函数/变量 ...

  6. python语言中split-python中的split()函数和os.path.split()函数使用详解

    Python中有split()和os.path.split()两个函数: split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表. os.path.split():将文件 ...

  7. python中的json函数_python中装饰器、内置函数、json的详解

    装饰器 装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象. 先看简单例子: def run(): time.sleep(1 ...

  8. java none怎么用tomcat_在docker中部署tomcat并且部署java应用程序的步骤详解

    先给大家简单说下Docker的概念 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是 ...

  9. java中String s=abc及String s=new String(abc)详解

    java中String s="abc"及String s=new String("abc")详解 1.   栈(stack)与堆(heap)都是Java用来在R ...

  10. JS 中的 event?event:window.event什么意思?求详解。

    JS 中的 event?event:window.event什么意思?求详解. 2013-04-16 00:01flying607 | 分类:JavaScript |浏览813次 <script ...

最新文章

  1. AutowireCapableBeanFactory,实现不必配置xml文件,动态加载bean
  2. CoCreateInstance 出错 ,返回 -2147221164 CLASS_NOT_REGISTERED ,原因
  3. 理解Git的设计思想,详解git文件夹,以及详解add、commit、push,fetch、pull、merge指令
  4. mqtt 异步消息 长连接 解析
  5. uboot2012(一)分析重定位
  6. 基于OpenCV的findContours查找图像连通域,并进行排序
  7. java web如何配置ask_Javaweb新手之路之JavaWeb开发环境配置篇
  8. HDLBits答案(25)_编写Testbench
  9. 微软相关的开发资源列表(update)
  10. 带你根据源码了解View的事件触发流程,主要讲解为什么子View返回true,ViewGroup就无法接收到事件的过程
  11. Lucene解析 - 基本概念
  12. mysql数据库 day03
  13. 【工具】Unity中如何自动化对模型减面?
  14. ubuntu安装nginx及其默认目录结构
  15. ReactWebpack 环境安装
  16. 如何在Python中获取文件创建和修改日期/时间?
  17. 2019年linux云计算就业前景,云计算前景与网络前景
  18. wamp mysql 端口_Wamp修改端口的方法
  19. 苹果怎么安装未签名的app_Windows端超简单安装未签名ipa应用
  20. 在linux开发板上显示图片,制作开发板的logo标签

热门文章

  1. 八百客浅析:移动CRM的趋势导航有哪些?
  2. 移动CRM系统让销售工作更顺利展开
  3. Vue脚手架入门基础
  4. 激光SLAM源码解析S-LOAM(三)里程计图优化
  5. 【PAT】Python 1023 组个最小数
  6. php操作sqlserver视频教程,php 连接 sqlserver
  7. 2024东华大学计算机考研信息汇总
  8. Python 期末总结
  9. python多线程爬虫框架_python-爬虫 多线程爬虫
  10. Jquery的$命名冲突详细解析