Cursor--游标
概念:
declarev_no employee.empno%type;v_name employee.name%type;v_sal employee.salary%type;cursor emp_cursor isselect empno , name , salaryfrom employeewhere empno ='0001';beginopen emp_cursor;loopfetch emp_cursor into v_no,v_name,v_sal;exitwhen emp_cursor%notfound;dbms_output.put_line('编号'||v_no||'员工'||v_name||'的工资是'||v_sal);end loop;close emp_cursor;end;
declarecursor emps_cursor isselect*from employee order by empno;v_emp employee%rowtype;beginfor v_emp in emps_cursor loopdbms_output.put_line('编号'||v_emp.empno||' 的员工: '||v_emp.name||' 的工资是 : '||v_emp.salary);end loop;end;
declarecursor em_cursor isselect*from employee order by salary desc;v_emp employee%rowtype;beginopen em_cursor;fetch em_cursor into v_emp;while em_cursor%rowcount<=5and em_cursor%found loopdbms_output.put_line(em_cursor%rowcount||''||v_emp.name||':'||v_emp.salary);fetch em_cursor into v_emp;end loop;close em_cursor;end;
--查询所有学生及其专业信息-显示游标declarecursor stuMajors isselect s.stuNo, s.name, s.JavaSEScore, s.score, m.name as majorNamefrom student s, major mwhere s.majorNo = m.majorNo;--定义变量与查询列一致v_stuNo student.stuNo%type;v_name student.name%type;v_seScore student.javasescore%type;v_sumscore student.score%type;v_majorName major.name%type;--记录type stumr is record(v_stuNo student.stuNo%type, v_name student.name%type,v_seScore student.javasescore%type, v_sumscore student.score%type,v_majorName major.name%type);stum stumr;beginopen stuMajors;-- fetch stuMajors into stum;-- fetch 游标中查询的列应与变量记录中列保持一致-- dbms_output.put_line(stum.v_name);-- fetch stumajors into v_stuNo, v_name, v_seScore, v_sumscore, v_majorName;-- dbms_output.put_line(v_name || v_majorName);loopfetch stuMajors into stum;dbms_output.put_line(stum.v_stuNo ||' '|| stum.v_name ||' '|| stum.v_seScore ||' '||stum.v_sumScore ||' '|| stum.v_majorName );-- dbms_output.put_line(stuMajors%rowCount);exitwhen stuMajors%notFound;end loop;close stuMajors;--游标for循环end;
Cursor--游标的更多相关文章
- 【PLSQL】变量声明,结构语句,cursor游标
************************************************************************ ****原文:blog.csdn.net/clar ...
- cursor游标(mysql)
/* 游标 cursor 什么是游标?为什么需要游标 使用存储过程对sql进行编程的时候,我们查询的语句可能是数据是多个,它总是一口气全部执行,我们无法针对每一条进行判断.也就是说,我们无法控制程序的 ...
- 转 oracle cursor 游标
转自:http://blog.csdn.net/liyong199012/article/details/8948952 游标的概念: 游标是SQL的一个内存工作区,由系统或用户以变量的形式定 ...
- DRF url控制 解析器 响应器 版本控制 分页(常规分页,偏移分页,cursor游标分页)
url控制 第二种写法(只要继承了ViewSetMixin) url(r'^pub/$',views.Pub.as_view({'get':'list','post':'create'})), #获取 ...
- SQL SERVER CURSOR游标的使用(转载)
一:认识游标 游标(Cursor)它使用户可逐行访问由SQL Server返回的结果集. 使用游标(cursor)的一个主要的原因就是把集合操作转换成单个记录处理方式. 用SQL语言从数据库中检索数据 ...
- SQL Cursor 游标的使用
DECLARE @name VARCHAR(50) --声明游标 DECLARE cursor_VAA1 CURSOR FOR SELECT VAA05 FROM VAA1 --打开游标 OPEN ...
- SQL Cursor(游标)
1.游标在数据表没有id(identity(1,1))时好用,但是游标会吃更多的内存,减少可用的并发,占用宽带,锁定资源,当然还有更多的代码量 2.如果能不用游标,尽量不要使用游标,用完用完之后一定要 ...
- 关键字(5):cursor游标:(循环操作批量数据)
declare cursor stus_cur is select * from students; --定义游标并且赋值(is 不能和cursor分开使用) cur_stu studen ...
- mysql cursor游标的使用,实例
mysql被oracle收购后,从mysql-5.5开始,将InnoDB作为默认存储引擎,是一次比较重大的突破.InnoDB作为支持事务的存储引擎,拥有相关的RDBMS特性:包括ACID事务支持,数据 ...
- Sql Server - CURSOR (游标)
1.声明游标 DECLARE 游标名 CURSOR SELECT语句(注:此处一定是SELECT语句) 2.打开游标 OPEN 游标名 3.读取 ...
随机推荐
- QProcess调用外部程序方式的差异
众所周知QProcess类的作用是启动一个外部的程序并与之交互它有三种方式调用外部程序: 1. execute 2. start 3. startDetached 从调用上看: execute是阻塞调 ...
- 网络IPC:套接字之建立连接
如果处理的是面向连接的网络服务(SOCK_STREAM或SOCK_SEQPACKET),在开始交换数据以前,需要在请求服务的进程套接字(客户端)和提供服务的进程套接字(服务器)之间建立一个连接.客户端 ...
- JS_CSS_logon_Mask
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Linux 进程管理剖析--转
地址:http://www.ibm.com/developerworks/cn/linux/l-linux-process-management/index.html Linux 是一种动态系统,能够 ...
- IP101A芯片默认物理地址(PHY Adress)确定
转载:http://blog.csdn.net/ropai/article/details/6961157 根据IP101A的DataSheet,芯片的第9,10,12,13,15脚为PHYAD0~P ...
- C# 之 未能映射路径
在开发中遇到此问题,如下原码,报错:未能映射路径: string filename = Server.MapPath("/logs/log.txt"); 解决方法,从根目录开始: ...
- myeclipse2014 安装maven3.3.9和mave配置本地仓库
昨天晚上发现eclipse下一个aptana JS的编辑插件,就想装到myeclipse下,结果悲剧了,myeclipse每次启动都闪退,虽然最后解决了,但是myeclipse里面的自带插件不知少了好 ...
- 解决TableView / ScrollView上的Menu问题(1滑出View区域还可点击2导致点击menu后View不能滑动)
解决TableView / ScrollView上的Menu问题 1划出区域还可点击 重写CCMenu的触摸事件函数 TouchBegin/TouchMove/TouchCancle/TouchEnd ...
- [改善Java代码]使用forName动态加载类文件
动态加载(Dynamic Loading)是指在程序运行时加载需要的类库文件,对Java程序来说,一般情况下,一个类文件在启动时或首次初始化时会被加载到内存中,而反射则可以在运行时再决定是否需要加载一 ...
- 关于Eclipse中Browser中显示html页面的总结.
用Eclipse中的Browser显示html页面,因为"just small thing.. browser in the studio is light browser.. it can ...