1.基本结构
create OR REPLACE PROCEDURE存储过程名字
(
参数1 IN NUMBER,
参数2 IN NUMBER
) IS
变量1 INTEGER :=0;
变量2 DATE;
BEGIN
END 存储过程名字
2.select INTO STATEMENT
将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)
例子:
BEGIN
select col1,col2 into 变量1,变量2 FROM typestruct where xxx;
EXCEPTION
WHEN NO_DATA_FOUND THEN
xxxx;
END;
...
3.IF 判断
IF V_TEST=1 THEN
BEGIN
do something
END;
END IF;
4.while 循环
WHILE V_TEST=1 LOOP
BEGIN
XXXX
END;
END LOOP;
5.变量赋值
V_TEST := 123;
6.用for in 使用cursor
...
IS
CURSOR cur IS select * FROM xxx;
BEGIN
FOR cur_result in cur LOOP
BEGIN
V_SUM :=cur_result.列名1+cur_result.列名2
END;
END LOOP;
END;
7.带参数的cursor
CURSOR C_USER(C_ID NUMBER) IS select NAME FROM USER where TYPEID=C_ID;
OPEN C_USER(变量值);
LOOP
FETCH C_USER INTO V_NAME;
EXIT FETCH C_USER%NOTFOUND;
do something
END LOOP;
CLOSE C_USER;
8.用pl/sql developer debug
连接数据库后建立一个Test WINDOW
在窗口输入调用SP的代码,F9开始debug,CTRL+N单步调试
Oracle存储过程入门学习基本语法
2019-10-30 18:55Oracle教程网 Oracle
Oracle存储过程基本语法学习入门必备
延伸 · 阅读
- 2022-03-09MySQL存储过程图文实例讲解
- 2022-03-09C# Ado.net实现读取SQLServer数据库存储过程列表及参
- 2022-03-07Oracle Linux 能否成为企业级 CentOS 的替代品?
- 2022-03-05Oracle VM VirtualBox 虚拟机硬盘扩容
- 2022-02-28oracle删除超过N天数据脚本的方法
- 2022-02-25oracle重置序列从0开始递增1
- Oracle
Oracle数据库由dataguard备库引起的log file sync等待问题
这篇文章主要介绍了Oracle数据库由dataguard备库引起的log file sync等待,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋...
- Oracle
Linux中Oracle数据库备份
在Linux中Oracle数据库备份的方法有很多,就像mysql一样可以使用不同方法进行备份oracle数据库 ...
- Oracle
oracle 动态AdvStringGrid完美示例 (AdvStringGrid使用技巧/Cells)
本方法实现用常量和常量数组完美创建和控制动态TAdvStringGrid。 ...
- Oracle
Oracle查看表结构命令详解
这篇文章主要介绍了Oracle查看表结构命令详解的相关资料,需要的朋友可以参考下 ...
- Oracle
[Oracle] dbms_metadata.get_ddl 的使用方法总结
以下是对Oracle中dbms_metadata.get_ddl的用法进行了详细的分析介绍,需要的朋友参考下 ...
- Oracle
oracle中利用关键字rownum查询前20名员工信息及rownum用法
这篇文章主要介绍了oracle中利用关键字rownum查询前20名员工信息,本文通过代码给大家简单介绍了ORACLE 中ROWNUM用法,非常不错,具有一定的参考借鉴价值,需...
- Oracle
oracle 优化的一点体会
oracle 优化的一点体会大家可以参考下,提升运行效率。 ...
- Oracle
oracle使用instr或like方法判断是否包含字符串
使用contains谓词有个条件,那就是列要建立索引,本节主要介绍了oracle使用instr或like方法判断是否包含字符串,需要的朋友可以参考下 ...