Oracle创建存储过程

本文详细介绍了Oracle数据库中创建和使用存储过程的方法,包括如何声明变量、调用其他存储过程、使用for循环、if语句以及动态执行存储过程。在示例中,展示了如何处理返回参数和动态调用存储过程时可能出现的问题。适合数据库开发者和管理员学习。
摘要由CSDN通过智能技术生成

创建存储过程

CREATE OR REPLACE procedure "TS_TEST" as
	//声明变量(下面示例中有用到,注意查看)
	o_succes  VARCHAR2(5);
	name      VARCHAR2(50);
	test_sql  VARCHAR2(100);
	t_type    NUMBER(5);
Begin
	o_succes:=0;
	t_type:=0;
	//方法
end ZX_TEST;

注:所有的逻辑代码都要写在Begin-end;内

1、调用其他存储过程

存储过程名称(in参数,out参数)
in-入参
out-返回参数

2、for循环

	for i in (select name from SYS_USER) loop
		name:=i.name;
	end loop;

3、if语句

		
	if o_succes =1 then    //开始
		//语句
	elsif o_succes =2 then
		//语句		
	ELSE 
		//语句		
	end if;	       //结束

4、动态调用存储过程

		
	for i in (select name from SYS_USER) loop
		name:=i.name;
		//拼接存储过程
		//name的值为动态存储过程名
		//这里的o_success是返回参数,所以用:o_success,解决以下问题
		test_sql:='begin '||name||'('||t_type||',:'||o_succes||'); end;';
		Execute Immediate test_sqlUsing  Out o_succes;
	end loop;
返回参数获取错误
PLS-00363: expression '0' cannot be used as an assignment target
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值