pl/sql-oracle中游标的使用方法

问题描述

oracle中游标的使用方法

使用下面的SQL语句创建一个临时表top_dogs,用于保存雇员的姓名和工资。
CREATE TABLE top_dogs
( name VARCHAR2(25),
salary NUMBER(11,2));
【要求】创建一PL/SQL块,检索出工资水平在前几名的雇员的姓名及工资(如果有多名雇员工资相同的情况,则每一个雇员都占n名中的一个名额,即最后只输出n个人)。
(1)通过SQL*Plus替代变量读取要检索的雇员人数n。
(2)通过循环,从EMP表中获取前n名的雇员的姓名及工资。(提示:rownum获得当前行行号)
(3)将检索出的雇员姓名和工资写入TOP_DOGS表。
(4)测试特殊情况,例如n=0或者n大于雇员总数。每次向TOP_DOGS写入数据前清空该表。
求教!!!

解决方案

http://blog.csdn.net/liyong199012/article/details/8948952

解决方案二:

游标被用的最多的是在存储过程中执行批量修改或是批量删除操作,比如删除一条主表记录之后,可以执行一个存储过程删除该记录对应的明细记录。?或者修改某张表的某个数据后反写另一张表的数据。这在ERP软件开发中是经常用到的,例如出库单实提之后要反写合同上的实提重量等等,这也要靠好的数据库设计来支持。
下面是一个ORACLE中在存储过程中使用游标的方法:

??&nb......
答案就在这里:ORACLE中游标的使用方法

解决方案三:

select * from top_dogs
where rownum <= n

时间: 2024-09-05 11:02:49

pl/sql-oracle中游标的使用方法的相关文章

详解ORACLE中游标的生命周期

 在网络或者书籍中,我们可以非常容易的了解到ORACLE中游标的生命周期包括如下部分: 1,打开游标-- open cursor,此步骤在 UGA 里申请一块内存给游标使用,这个时候游标还没有与sql语句关联. 2,解析游标-- sql与游标关联起来,解析sql的内容(包括执行计划),解析后的内容会被加载到共享池中(share pool-- library cache).在UGA申请的内存用来保存指向这个共享游标(share cursor)在library cache中的位置. 3,定义输出变量

全面解析数据库中游标的使用方法

游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.由系统或用户以变量的形式定义.用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理,主语言是面向记录的,一组主变量一次只能存放一条记录在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率.用数据库语言来描述游标就是映射在结果集中一行数据上的位置实体,有了游标,用户就可以访问结果集中的任意一行数据

PL/SQL Developer导入导出数据库方法及说明

PL/SQL Developer是Oracle数据库中用于导入或导出数据库的主要工具,本文主要介绍了利用PL/SQL Developer导入和导出数据库的过程,并对导入或导出时的一些注意事项进行了说明,接下来我们就一一介绍. 一.导出步骤1 tools ->export user object 选择选项,导出.sql文件 2 tools ->export tables-> Oracle Export 选择选项导出.dmp文件   二.导入步骤导入之前最好把以前的表删除,当然导入另外数据库

Orcale 数据库客户端PL/SQL 中文乱码的问题解决方法_oracle

配置一下环境变量即可: 1.我的电脑--> 属性---> 高级系统设置 --> 环境变量 2.配置环境变量 变量名:NLS_LANG 变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 这样在PL/SQL 中就没有乱码了,也支持中文的查询了.

sql server 中游标的认识

  一.遇到的问题 实际上,也不算什么太大的问题O(∩_∩)O:我们有时候可能希望在批处理或者存储过程中直接对select结果集进行加工 ,这个时候,我们需要一种能够让我们逐条处理每一行记录 的数据库对象. 二.游标的概念 解决上面的问题,我们可以使用一种叫做"游标"的数据库对象. 游标(Cursor) 可以看做一种数据类型,它可以用来遍历结果集,相当于指针,或者是数组中的下标.它处理结果集的方法有以下几种: 定位到结果集的某一行 从当前结果集的位置搜索一行或一部分行 对结果集中的当前

《Oracle PL/SQL程序设计(第5版)》一一2.6 在其他语言中调用PL/SQL

2.6 在其他语言中调用PL/SQL Oracle PL/SQL程序设计(第5版) 总有一天,你会在从C.Java.Perl.PHP或其他语言中调用PL/SQL.虽然这是一个很合理的需求,如果你曾经做过跨语言的开发工作,你一定熟知要把各种语言专有的数据类型糅合在一起─尤其是那些复合数据类型,比如数组.记录或者对象类型─的复杂性,更不用说不同的参数语法或者厂商对所谓"标准"应用编程接口(API)的扩展,比如微软的ODBC(Open Database Connectivity). 我会用几

《Oracle PL/SQL程序设计(第5版)》一一2.3 SQL*Plus

2.3 SQL*Plus Oracle PL/SQL程序设计(第5版)作为Oracle前端工具的鼻祖,Oralce 的SQLPlus提供了一个命令行方式的解释器,同时支持SQL和PL/SQL.SQLPlus可以接受用户输入的语句,然后把语句发送给Oracle服务器,并显示处理结果. 尽管经常作为一个用户接口工具SQLPlus饱受诟病,但并不影响SQLPlus成功为我最喜欢的Oracle工具.我并不喜欢那些花里胡哨的玩意和菜单.比较搞笑的是,在我最开始使用Oracle时(大约1986年),这个产品

《Oracle PL/SQL必知必会》——第2章 初识Oracle和PL/SQL 2.1 什么是Oracle

第2章 初识Oracle和PL/SQL Oracle PL/SQL必知必会 在本章中,你将认识Oracle和PL/SQL是什么,以及你可以使用什么工具来操作它们. 2.1 什么是Oracle 在前一章中,你学习了数据库和SQL.如所解释的那样,做所有工作(存储.检索.管理和操作数据)的实际上是数据库软件(DBMS或数据库管理系统[Database Management System]).Oracle DBMS(或者简称为Oracle)就是一个DBMS:也就是说,它是数据库软件. Oracle已经

Oracle教程之pl/sql简介_oracle

本文实例讲述了Oracle的pl/sql.分享给大家供大家参考,具体如下: 一.pl/sql 是什么 pl/sql(procedural language/sql)是oracle在标准的sql语言上的扩展. pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,这样使得它的功能变得更加强大. 二.为什么要学pl/sql 1.提高应用程序的运行性能 2.模块化的设计思想(分页的过程,订单的过程,转账的过程..) 3.减少网络传输量 4.提高