pl/sql编程小结

1.创建一个简单的表
create table mytest_chg(name varchar2(30),passwd varchar2(30));
2.创建存储过程(最后要"/"才能执行)
create or replace procedure chg_pro1 is
begin
insert into mytest_chg(name,passwd) values('bbb','123');
end;
/
2.2查看错误信息方法
show error;
3.如何调用过程
3.1 exec过程名(参数值1,参数值2...);
call过程名(参数值1,参数值2...);--有无参数时报错
delete from mytest_chg where name='aaa';
4.pl/sql块
--开启(一定要先开启)
set serveroutput on;
--简单的块
begin
--输出
dbms_output.put_line('hello oracle');
end;

5.查询将值赋给一个变量,再打印出来&no是传empno字段的值
declare v_ename varchar2(5);
begin
select ename into v_ename from emp where empno=&no;
dbms_output.put_line('雇员名:'||v_ename);
end;
5.2
declare
--定义变量
v_ename varchar2(5);
v_sal number(7,2);
begin
--执行部分
select ename,sal into v_ename,v_sal from emp where empno=&no;
dbms_output.put_line('雇员名:'||v_ename||'工资是:'||v_sal);
--异常处理
exception
when no_data_found then
dbms_output.put_line('输入编号未找到');
end;
6.--案例
create procedure ch_pro2(chName varchar2,newSal number) is
begin
--执行部分,根据用户名修改工资
update emp set sal=newSal where ename=chName;
end;
--调用
exec ch_pro2('SMITH',1000);
7.如何在java中调用oracle存储过程
7.1得到连接后,创建CallableStatement cs=con.prepareCall("{call ch_pro2(?,?)}");
注意:这里执行的语句要用“{}”括起来,而且不能用exec
7.2给?赋值cs.setString();cs.setInt();//执行cs.execute;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值