oracle存储过程基本
2015-06-23 20:27
691 查看
create or replace procedure 存储过程名称(
参数1 in varchar2,
参数2 in varchar2,
参数3 in number,
参数4 out number)
is
变量1 varchar2(200);
变量2 varchar2(10);
变量3 number;
begin
变量3 := 参数3; --变量赋值
select a.id,a.name into 变量1,变量2 from user a where a.longname=参数1 and a.password =参数2;
--将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有且只有一条记录,否则抛出异常
N_A:=v_F; --select查询的结果有且只有一条数据时返回v_F;
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('没有找到数据!');
N_A:=0; --select没有查询到数据时返回0
WHEN TOO_MANY_ROWS THEN
dbms_output.put_line('返回数据太多!');
N_A:=10;--select没有查询到多条数据时返回10
WHEN OTHERS THEN
dbms_output.put_line('异常!');
N_A:=111;--其它异常
end 存储过程名称;
说明:参数1、参数2和参数3是传入的参数,供存储过程使用的;参数4是输出参数
参数1 in varchar2,
参数2 in varchar2,
参数3 in number,
参数4 out number)
is
变量1 varchar2(200);
变量2 varchar2(10);
变量3 number;
begin
变量3 := 参数3; --变量赋值
select a.id,a.name into 变量1,变量2 from user a where a.longname=参数1 and a.password =参数2;
--将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有且只有一条记录,否则抛出异常
N_A:=v_F; --select查询的结果有且只有一条数据时返回v_F;
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('没有找到数据!');
N_A:=0; --select没有查询到数据时返回0
WHEN TOO_MANY_ROWS THEN
dbms_output.put_line('返回数据太多!');
N_A:=10;--select没有查询到多条数据时返回10
WHEN OTHERS THEN
dbms_output.put_line('异常!');
N_A:=111;--其它异常
end 存储过程名称;
说明:参数1、参数2和参数3是传入的参数,供存储过程使用的;参数4是输出参数
相关文章推荐
- Oracle442个应用场景----------数据库实例
- python sqlalchemy对oracle数据库的ORM反射
- Oracle sequence cache简析
- Flashback Data Archive ( Oracle Total Recall ) introduced in 11g
- Oracle基础1 — sequence 序列
- 脚本 - Oracle10g PSU后升级数据字典(RAC)
- 脚本 - Oracle10g PSU后升级数据字典(单实例)
- 结合使用 Oracle 和 Ruby on Rails 的补充
- oracle10.2.0.4 dbvault 安装篇
- Oracle、MySql、SQLServer 数据分页查询
- 关于win7 x64 连接oracle 客户端 VS2010调试 提示“ORA-12154: TNS: 无法解析指定的连接标识符 ”
- Oracle Flashback Technologies - 闪回查询
- Oracle数据库之动态SQL
- Redhat 5.8 ORACLE 11gR2 RAC安装文档4-grid 安装验证
- oracle表执行更新操作的时候,那些字段被更新了
- Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
- Oracle Flashback Technologies - 闪回被drop的表
- Oracle Flashback Technologies - 估算不同时间段闪回日志的产生量
- Oracle Latch 管理
- Oracle 11g 分区表