五.函数与游标
来源:互联网 发布:linux telnet 端口测试 编辑:程序博客网 时间:2024/06/06 15:00
-----函数------------------------------------
create function secfunc(v_pric in number, v_qty in number) return number is
begin
if v_qty > 30 then
return(v_pric * 0.75);
else
return(v_pric * 0.9);
end if;
end;
drop function secfunc
select * from productinfo
select p.proname, p.proprice, p.quantity, secfunc(p.proprice, p.quantity)
from productinfo p
-------------静态游标--------------------------
声明
declare cursor my_cursor is select * from productinfo;
打开
open my_cursor
读取数据
fetch my_cursor into ****;
--实例------------------------loop ---------------------
declare
cursor cur_product is
select * from productinfo;
cur_prorow productinfo%rowtype;
begin
open cur_product;
loop
fetch cur_product
into cur_prorow;
if cur_product%found then
Dbms_Output.put_line('产品:' || cur_prorow.proid || ' ' ||
cur_prorow.proname);
else
exit;
end if;
end loop;
close cur_product;
end;
-------------------集合类型取多条记录---------------
declare
cursor cur_collect is
select * from productinfo;
type pro_tab is table of productinfo%rowtype;
pro_tabrd pro_tab;
begin
open cur_collect;
loop
fetch cur_collect bulk collect
into pro_tabrd;
for i in 1 .. pro_tabrd.count loop
Dbms_Output.put_line('产品:' || pro_tabrd(i).proid || ' ' || pro_tabrd(i)
.proname);
end loop;
exit when cur_collect%notfound;
end loop;
close cur_collect;
end;
-----for loop--------- 更简单的方式----建议使用此种形式-----------------------
declare
cursor cur_product is
select * from productinfo;
begin
for cur_product1 in cur_product
loop
Dbms_Output.put_line('产品:' || cur_product1.proid || ' ' ||
cur_product1.proname);
Dbms_Output.put_line(cur_product%rowcount);
end loop;
end;
--------------------游标的属性用来实现对脚本的流程控制---------------------------------------------------------
-----------隐式游标---------------------------------------------------------------------------------------------
/* 隐式游标为PL/SQL自动管理
名字默认为SQL
select和dml操作产生隐式游标
隐式游标的属性值始终为最新执行的sql语句*/
属性:
%isopen 始终为false
%found 是否影响到了数据
%notfound 与%found相反
%rowcount 影响到的数据的函数
- 五.函数与游标
- oracle从入门到精通 之 五.函数与游标
- 游标函数
- mssql方便的函数使用与游标使用练习
- SQL 函数、存储过程、游标与事务模板
- sql自定义函数与游标的结合使用
- SQL函数内游标变量声明与执行顺序
- 父游标与子游标
- 五、C++ 函数指针 与 指针函数
- 存储过程(五)游标
- 游标、过程、函数、包
- 存储过程、函数、游标 .
- 函数和游标
- mysql函数游标
- sqlserver 函数游标
- 自定义函数+游标
- oracle 方法 函数 游标
- 函数&&存储过程&&游标
- linux shell自动变量$#,$@,$0,$1,$2
- 项目开发流程(期间使用的UML图表)
- ACE学习(二)原子操作与ACE_Atomic_Op
- Configure on host for network bridge
- SQL Tuning Advisor(STA) 到底做了什么?
- 五.函数与游标
- 基本排序之快速排序
- Android TabHost,TabWidget,FrameLayout 选项卡总结
- 各种数据库的比较和区别
- osgearth for android 之一:编译前的参考
- C++ vector容器类型
- 总线综述
- svn 服务器搭建
- 百度CSDN移动开发资源 共享