Oracle常用代码总结(6)

2021-04-05 06:49

java开发中的总结 大家可以看看哦

循环:
declare
n number:=1;
count1 number:=2;
begin
loop
n:=n*count1;
count1:=count1+1;
if count1>10 then
exit;
end if;
end loop;
dbms_output.put_line(to_char(n));
end;
when实现循环:
declare
n number:=1;
count1 number:=2;
begin
loop
n:=n*count1;
count1:=count1+1;
exit
when count1>10;
end loop;
dbms_output.put_line('结果:'||to_char(n));
end;
while实现循环:
declare
n number:=1;
count1 number:=2;
begin
while count1<=10
loop
n:=n*count1;
count1:=count1+1;
end loop;
dbms_output.put_line('结果:'||to_char(n));
end;
for循环:
declare
n number:=1;
count1 number;
begin
for count1 in 2..10
loop
n:=n*count1;
end loop;
dbms_output.put_line('结果:'||to_char(n));
end;


--自定义函数--
--功能:实现以部门号查询平均工资--
--第一步:编写自定义函数:
create or replace function avgersal(v_dept_sal in
number) return number is
Result number;
begin
select avg(salary) into Result from guyuan where

department_id = v_dept_sal group by department_id;
return (Result);
end avgersal;
--第二步:调用函数:
declare
v_dept_id number(5):=30;
sal number(7,2);
begin
sal := avgersal(v_dept_id);
dbms_output.put_line('部门30的人员平均工资:'||sal);
end;

查询某人的记录:
declare
c_tax_rate number(3,2):=0.03;
--用户名
v_name varchar2(10);
v_sal number(7,2);
v_tax_sal number(7,2);
begin
--执行
select fast_name,salary into v_name,v_sal from guyuan

where employee_id = 1005;
--计算所得税
v_tax_sal:=v_sal*(c_tax_rate);
dbms_output.put_line('姓名 '||v_name||' 工资 '||v_sal||' 交税 '||v_tax_sal);
end;


PL/SQL创建存储过程
创建过程:

create table mytest(name varchar2(30),password varchar(30));
create or replace procedure sp_pro1 is
begin
insert into procedures values (2,'验证过程','服务器');
end;(or replace表示替换原来的过程)

显示错误:
show error;

调用过程:
exec sp_pro1;
call sp_pro1;

删除过程:
create or replace procedure sp_pro2 is
begin
--执行部分
delete from procedures where pro_id='2';
end;

含有异常处理的存储过程:
declare
--定义变量
v_name varchar2(30);
v_address varchar2(30);
begin
--执行部分
select pro_name,pro_address into v_name,v_address from procedures where pro_id=2;
--在控制台显示用户名
dbms_output.put_line('存储过程名称:'||v_name ||'存在位置:'||v_address);
--异常处理
exception
when no_data_found then
dbms_output.put_line('编号不存在。');
end;

--users表的查找存储过程
create or replace procedure users_pro(uid in number,uname out varchar2,uage out n
umber) is
begin
select name,age into uname,uage from users where id = uid;
end;
--调用users_pro存储过程--
declare
user_id number;
user_name va


Oracle常用代码总结(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小学英语清华版二年级上册Unit2 clothes《Lesson 8》省级名师优

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: