存储过程
00、查看存储过程
00、删除存储过程
drop procedure proc_name;
00、重新编译存储过程
alert procdure proc_name compile
00、给用户赋予执行权限
grant execute on proc_name to userName
00、调用存储过程
方法1:execute 模式名.proc_name
方法2:
begin
模式名.proc_name
end
00、声明变量
declare
var1 number(2); -- 仅声明
var2 char(2) := '11'; -- 在声明的同时初始化
1、在定义变量名字的时候,一定要注意变量名字不可以是关键字
2、创建存储过程的时候,参数的数据类型不可以指定精确数据类型。例如,只能使用number、varchar2,而不可以使用varchar2(4)
00、oracle语法
1、if
1、
IF ... THEN
...;
END IF;
2、
IF... THEN
...;
ELSE
...;
END IF;
3、
IF...THEN
...;
ELSEIF...THEN
...;
ELSE
...;
END IF;
2、case
CASE
WHEN...THEN...;
ELSE ...;
END CASE;
case语句如果作为分支控制语句,最后结束语句是end case,如果是作为select语句里的控制语句则只需要end
3、for循环
1、
FOR ... IN ...
LOOP
...;
END LOOP;
2、中止sp
for currow in (
select t.col1, t.col2
from tableName t
where ...
)
loop
if currow.col1 = 0 then
return; -- 中止sp,返回
end if;
end loop;
5、while循环
1、
WHILE ...
LOOP
IF ... THEN exit;-- 中止sp,返回
END IF;
END LOOP;
2、
declare
isok := 9;
while isok >= 0
loop
isok := isok - 1;
if isok = 8 then
continue; -- 与编程语言的 continue 语义一样,跳过当前循环的剩余语句,回到循环开始
end if;
if isok <= 0 then
exit; -- 与编程语言的 break 语义一样,跳出循环
end if;
dbms_output.put_line('isok:' || isok);
end loop;
00、创建存储过程
1、
create procedure proc_GradeCount
as
gradeCount number(10);
begin
select count(*) into gradeCount from grade a;
Dbms_Output.put_line(年级总数''||gradeCount);
end;
2、参数设置
create or replace procedure sp_name (
-- 入参、出参列表, 逗号分隔。
uid in varchar2, -- 不能带长度信息
startDate in date, -- 第二个输入参数
defaultVar in varchar2 default "", -- 默认参数,如果不传,要注意参数的顺序
isok out number, -- 输出参数
result out varchar2 -- 第二个输出参数
)
参数的定义形式和作用如下:
参数名 IN 数据类型 DEFAULT 值;
定义一个输入参数变量,用于传递参数给存储过程。在调用存储过程时,主程序的实际参数可以是常量、有值变量或表达式等。DEFAULT 关键字为可选项,用来设定参数的默认值。如果在调用存储过程时不指明参数,则参数变量取默认值。在存储过程中,输入变量接收主程序传递的值,但不能对其进行赋值。
参数名 OUT 数据类型;
定义一个输出参数变量,用于从存储过程获取数据,即变量从存储过程中返回值给主程序。
在调用存储过程时,主程序的实际参数只能是一个变量,而不能是常量或表达式。在存储过程中,参数变量只能被赋值而不能将其用于赋值,在存储过程中必须给输出变量至少赋值一次。
参数名 IN OUT 数据类型 DEFAULT 值;
定义一个输入、输出参数变量,兼有以上两者的功能。在调用存储过程时,主程序的实际参数只能是一个变量,而不能是常量或表达式。DEFAULT 关键字为可选项,用来设定参数的默认值。在存储过程中,变量接收主程序传递的值,同时可以参加赋值运算,也可以对其进行赋值。在存储过程中必须给变量至少赋值一次。
如果省略IN、OUT或IN OUT,则默认模式是IN。
00、
总结:
1、在定义变量名字的时候,一定要注意变量名字不可以是关键字
2、创建存储过程的时候,参数的数据类型不可以指定精确数据类型。例如,只能使用number、varchar2,而不可以使用varchar2(4)
- 浏览: 61615 次
- 性别:
文章分类
发表评论
-
mysql数据类型转换
2013-08-16 10:07 444001、char----date STR_TO_DATE ... -
oracle摘要
2013-04-24 15:39 55200、oracle默认测试表 select to_char ... -
orcale游标简介
2013-02-28 17:18 59700、游标的概念: ... -
总结:整理 oracle异常错误处理
2013-02-28 12:19 20405.1 异常处理概念 5.1.1 预定义的异常处理 5. ... -
oracle 视图创建和操作,创建简单,复杂的视图,创建基表不存在的视图,视图增删改,查看视图的结构
2013-02-27 14:23 875转载:http://heisetoufa.iteye.com ... -
oracle数据类型转换函数
2013-02-27 13:56 1180转换函数 Oracle的类型转换分为自动类型转换和强制类型 ... -
oracle 触发器的种类和触发事件,DML触发器,DDL事件触发器,替代触发器,查看触发器,
2013-02-27 11:04 938转载:http://heisetoufa.iteye.com ... -
oracle 创建,删除存储过程,参数传递,创建,删除存储函数,存储过程和函数的查看,包,系统包
2013-02-27 11:01 728转载:http://heisetoufa.iteye.com ... -
oracle 隐式游标,显示游标,游标循环,动态SELECT语句和动态游标,异常处理,自定义异常
2013-02-27 10:27 745转载:http://heisetoufa.iteye.com ... -
Oracle字符串处理函数
2013-01-30 10:47 652001、字符串连接 concat或|| se ... -
Oracle日期函数
2013-01-30 10:46 662获取当前日期 sysdate:to_char(sysdat ... -
MySql触发器
2013-01-29 13:52 1014001、触发器 查看 ... -
MySql游标
2013-01-28 18:15 744001、 what 游标是指向查询结果集 ... -
MySql存储过程
2013-01-28 16:37 638001、查看存储过程show procedure stat ... -
MySql字符串处理函数
2013-01-28 10:55 528001、 字符串连接 CONCAT(str1,str2 ... -
MySql日期处理
2013-01-27 21:51 424获取当前时间:now( ) ... -
事务传播机制和隔离级别
2012-12-25 11:18 1292原帖:http://zhxing.iteye.com/blog ... -
MySql摘要
2013-01-14 09:45 785001、批量删除 public void deleteA ... -
MySql语句
2012-08-13 10:20 538--用户信息表 drop table if exists t ...
相关推荐
#### 一、Oracle存储过程简介 在Oracle数据库中,存储过程是一种预编译好的SQL代码集合,它可以接受输入参数、返回单个值或多个值,并能够执行复杂的数据库操作。存储过程提高了代码的重用性和执行效率,同时也便于...
本文将从 Oracle 存储过程的基础知识开始,逐步深入到 Oracle 存储过程的高级应用,包括 Hibernate 调用 Oracle 存储过程和 Java 调用 Oracle 存储过程的方法。 Oracle 存储过程基础知识 Oracle 存储过程是 Oracle...
一、Oracle 存储过程简介 Oracle 存储过程是一种可以在 Oracle 数据库中存储和执行的程序单元。存储过程可以由多种语言编写,例如 PL/SQL、Java 等。存储过程可以封装复杂的业务逻辑,提高数据库的安全性和性能。 ...
Oracle存储过程是数据库管理系统中的一项重要功能,它允许用户将一系列的SQL语句和PL/SQL块组合成一个单元,并将其存储在数据库中。使用存储过程可以带来一系列的好处,例如提高数据库操作的效率、降低网络流量以及...
以下是对“oracle存储过程解锁”这一主题的深入解析。 ### 标题:“oracle存储过程解锁” #### 解析: 在Oracle数据库中,存储过程是一种预先编译并存储在数据库中的SQL代码块,用于执行复杂的业务逻辑或数据处理...
Oracle存储过程unwrap解密工具主要用于处理Oracle数据库中的加密存储过程。在Oracle数据库系统中,为了保护敏感代码或数据,开发人员有时会选择对存储过程进行加密。然而,当需要查看、调试或恢复这些加密的存储过程...
oracle 存储过程导出excel oracle 存储过程导出excel oracle 存储过程导出excel oracle 存储过程导出excel oracle 存储过程导出excel
总结起来,"帆软报表Oracle存储过程解决storeParameter1参数试用插件"主要是针对在调用无参数Oracle存储过程时出现的异常问题提供的一种解决方案。通过安装并配置这个插件,用户可以顺利地在帆软报表中调用不包含...
Oracle存储过程是数据库管理系统中的一种重要特性,它允许开发者编写一系列SQL语句和PL/SQL块,形成可重复使用的代码单元。这篇博客“oracle存储过程-帮助文档”可能提供了关于如何创建、调用和管理Oracle存储过程...
本文实例讲述了Python使用cx_Oracle调用Oracle存储过程的方法。分享给大家供大家参考,具体如下: 这里主要测试在Python中通过cx_Oracle调用PL/SQL。 首先,在数据库端创建简单的存储过程。 create or replace ...
可以将SQL Server存储过程转为oracle存储过程的工具
#### 一、Oracle存储过程简介 在Oracle数据库中,存储过程是一种在数据库服务器上预编译好的SQL代码块,它可以包含一系列的SQL语句和控制流语句。存储过程的主要优点包括提高性能(通过减少网络传输的数据量)、...
oracle存储过程加密破解 0
Oracle存储过程常用技巧 Oracle存储过程是一种强大的数据库对象,它可以帮助开发者简化复杂的业务逻辑,并提高数据库的安全性和性能。在 Oracle 中,存储过程是一种特殊的 PL/SQL 程序,它可以接受输入参数,执行...
ibatis调用oracle存储过程分页
以下是一个简单的示例,展示了如何调用一个不带参数的Oracle存储过程: ```java Session session = sessionFactory.openSession(); Transaction transaction = session.beginTransaction(); session....
Oracle存储过程是数据库管理系统Oracle中的一个关键特性,它允许开发者编写一组预编译的SQL和PL/SQL语句,以实现特定的业务逻辑或数据库操作。这篇教程将深入讲解Oracle存储过程的各个方面,帮助你从基础到高级全面...
### Oracle存储过程批量提交知识点详解 在Oracle数据库中,存储过程是一种重要的数据库对象,它可以包含一系列SQL语句和控制流语句,用于实现复杂的业务逻辑处理。存储过程不仅可以提高应用程序性能,还可以确保...
本文将详细讲解如何在C#中使用自定义列表(List)作为参数调用Oracle存储过程,以及实现这一功能的关键技术和注意事项。 首先,我们需要了解Oracle数据库中的PL/SQL类型,例如VARCAR2、NUMBER等,它们对应于C#中的...
本文将深入探讨如何在Spring Boot项目中整合MyBatis,实现调用Oracle存储过程并处理游标返回的数据。 首先,我们需要在Spring Boot项目中引入相关的依赖。在`pom.xml`文件中添加Oracle JDBC驱动(ojdbc66-oracle...