Cursor--游标
概念:
declare
v_no employee.empno%type;
v_name employee.name%type;
v_sal employee.salary%type;
cursor emp_cursor isselect empno , name , salary
from employee
where empno ='0001';
begin
open emp_cursor;
loop
fetch 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;
declare
cursor emps_cursor isselect*from employee order by empno;
v_emp employee%rowtype;
begin
for v_emp in emps_cursor loop
dbms_output.put_line('编号'||v_emp.empno||' 的员工: '||v_emp.name||' 的工资是 : '||v_emp.salary);
end loop;
end;
declare
cursor em_cursor isselect*from employee order by salary desc;
v_emp employee%rowtype;
begin
open em_cursor;
fetch em_cursor into v_emp;
while em_cursor%rowcount<=5and em_cursor%found loop
dbms_output.put_line(em_cursor%rowcount||''||v_emp.name||':'||v_emp.salary);
fetch em_cursor into v_emp;
end loop;
close em_cursor;
end;
--查询所有学生及其专业信息-显示游标
declare
cursor stuMajors isselect s.stuNo, s.name, s.JavaSEScore, s.score, m.name as majorName
from student s, major m
where 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;
begin
open 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);
loop
fetch 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.读取 ...
随机推荐
- error LNK2019: unresolved external symbol / error LNK2001: 无法解析的外部符号
在 vc++ 2008 和 vc++ 2010 编译时分别出现上面的错误.一般这种错误是由于引用函数未定义造成的,如外部类库未包含,实现代码未编写等. 但最终检查的结果,却是另外一种情况:文件名重名. ...
- 互联网常见Open API文档资源
原文地址:http://blog.sina.com.cn/s/blog_4d8713560100y272.html 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网 ...
- C++重载(主要介绍使用友元函数重载)
重载限制 多数C++运算符都可以用下面的方式重载.重载的运算符不必是成员函数,但必须至少有一个操作数是用户自定义的类型.下面详细介绍C++对用户定义的运算符重载的限制. 1 重载后的运算符必须至少有一 ...
- Samba服务器配置参考链接
一步一学Linux与Windows共享文件Samba(很适合初学者,极力推荐): http://os.51cto.com/art/200709/56395.htm 由最简单的一个例子说起,匿名用户可读 ...
- laraval框架之数据库不可不吐槽的坑
最近做的项目一直在用laraval框架,有些地方确实很方便,但是有些方面实在是太坑了,就比如这次在数据库里,官方文档写的是 Take note that email is not a required ...
- 如何用eclispe远程调试tomcat--转载
原文地址:http://jingyan.baidu.com/article/0320e2c1f4ef6b1b87507b06.html tomcat是一种非常常见的java web应用服务器,有时候服 ...
- org.apache.hadoop.fs-BufferedFSInputStream
封装了FSInputStream package org.apache.hadoop.fs; import java.io.BufferedInputStream; import java.io.IO ...
- learning nodejs 1 - stream.pipe
a simple http server using inner http module. var http = require('http'); var fs = require('fs'); // ...
- git初步使用总结
今天时隔大半年之后再一次接触了git,发现在这学期学习过一点linux之后,对git的学习变得感觉一切都是那么理所当然. 下面仅仅是罗列一下我的学习笔记. 1.下载git可以到百度软件库下载,一般都可 ...
- P6Spy 、 SQL Profiler
P6Spy 在优化Hibernate性能的时候,很重要的一点就是要看到Hibernate底层执行的SQL 虽然通过打印日志配合Hibernate的show_sql属性能够拼凑出Hibernate底层执 ...