游标(Cursor)是用户从查询记录集中逐条逐行地访问(移动读取、修改或删除)记录的数据处理机制。
游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。每个游标区都有一个名字。用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。主语言是面向记录的,一组主变量一次只能存放一条记录。
步骤
声明、打开、使用(移动读取、删除、修改)、关闭、释放 5步
类型
(1)静态(Static):只能看到open时的记录内容。
(2)动态(Dynamic):随时能看到当前的记录内容,
包括别人所做的修改。
(3)只进(Forward Only):
只能从前往后一条一条移动记录指针。
(4)滚动(Scroll):
向前、向后,一条或多条移动记录指针。
声明游标(1)
declare 游标名 cursor
[local | global]
[forward_only | scroll]
[static | keyset | dynamic | fast_forward]
[read_only | scroll_locks | optimistic]
for select语句
[for update [of 列名 [,...n]]]
Ø 游标名:游标命名必须符合标识符规则,不能超过30 个字符。
Ø select语句:定义结果集的标准select语句,且不许用compute、compute by、for browse和into子句。
Ø local:游标的作用域是局部的[创建它的批处理、存储过程或触发器]。
Ø global:游标的作用域是全局的。在由连接执行的任何存储过程或批处理中,都可以引用该游标名称。该游标仅在连接断开时自动释放。
Ø forward_only 只进。仅支持next。
Ø Scroll 滚动 支持:next、prior、first、last、absolute、relative
Ø static 静态 open时在tempdb创建临时表复本保存结果集。只提取,不许修改
Ø dynamic 动态 记录值、顺序等在每次提取时都可能因其他用户的更改而变动。不支持 absolute 提取选项。
Ø keyset 键集 open时在tempdb创建keyset表,记录结果集中每条记录的关键字段值和顺序。
Ø fast_forward 快速向前 优化的 forward_only、read_only.与scroll、for_update、 forward_only互斥
Ø read_only 只读 在 update 或 delete 语句的 where current of 子句中不能引用游标
Ø scroll_locks 滚动锁定 当滚动记录指针提取当前记录时,系统将会锁定该行,确保游标更新或删除的成功
Ø Optimistic 乐观 行自从被读入游标以来,如果已修改该行,尝试进行的更新或删除将失败
Ø for update [of 列,...]]更新 指定可更新的列。默认所有列
分享到:
相关推荐
数据库视图和索引游标实验报告 一、数据库视图 * 视图的创建:Create view Einstein_student As Select distinct instructor.name, advisor.i_ID, advisor.s_ID, student.ID, student.name From student, ...
总结来说,这个Java项目的核心是通过Oracle数据库的添加、更新操作以及使用游标处理过程来管理数据。这涵盖了数据库基础、SQL语法、PL/SQL编程以及Java中的JDBC应用。理解和掌握这些知识点,对于进行企业级的Java...
总结来说,Oracle数据库中的游标是一个强大的工具,它不仅可以提高数据处理的效率,还可以为复杂的查询和数据操作提供便利。游标的类型、属性、循环使用方法以及异常处理,都是理解和掌握游标操作的必要知识。随着...
### Oracle数据库的游标学习总结 #### 一、引言 在Oracle数据库中,游标是一种重要的机制,用于处理查询结果集。通过游标,我们可以逐行地读取查询结果,这对于复杂的业务逻辑处理非常有用。本文将详细介绍Oracle...
### 三、添加远程服务器 在 SQL Server 中,有时我们需要在本地服务器上执行远程服务器上的操作,这时就需要添加远程服务器。 虽然在给定的部分内容中并未直接提及如何添加远程服务器,但在实际操作中可以通过以下...
总结,Python操作MySQL数据库时,cursor游标是实现交互式数据处理的关键,它提供了逐条处理数据的能力,使得我们能够灵活地根据业务需求进行数据操作。无论是处理大数据集还是执行复杂逻辑,游标都是数据库编程中不...
在计算机等考三级数据库基础的学习中,临时表和游标是两个重要的概念,尤其是在处理数据操作和查询时。本文将对这两个概念进行深入的总结。 首先,临时表是一种特殊的数据库对象,它存在于`tempdb`系统数据库中。...
根据提供的文件信息,我们可以总结出以下SQL数据库使用游标及随机插入数据的相关知识点: ### SQL 游标的使用 #### 1. 游标定义 游标是数据库中的一个临时存储区域,它允许用户通过逐行的方式处理结果集中的数据。...
三、游标的声明方式 游标的声明方式有两种:显示游标和隐式游标。 1. 显示游标:显示游标是使用 cursor...is 语句定义的游标。 2. 隐式游标:隐式游标是在执行插入(insert)、删除(delete)、修改(update)和...
总结来说,Oracle游标是数据库编程中的强大工具,允许我们按需处理数据,尤其是在需要精细控制数据流和执行复杂操作时。正确理解和有效利用游标,可以帮助我们编写出更加高效和灵活的数据库应用程序。
Oracle 12c 数据库基础教程中,游标、存储过程和触发器是三个重要的概念。本文将详细介绍游标的基本概念、类型、声明、打开、读取和关闭,存储过程的定义和使用,以及触发器的基本概念和创建。 游标 游标是Oracle...
本篇将深入探讨"fgdb_游标查找_游标实现数据库创建_"这个主题,通过分析`fgdb.py`文件中的内容,我们将理解如何利用游标进行数据库创建、查找和更改,以及如何实现两个地图数据的对应关系。 首先,让我们了解什么是...
关于存储过程和游标的总结 本文主要介绍了游标的概念、类型、状态和使用方法,以及存储过程的相关知识。 一、游标的概念 游标是一种机制,允许应用程序逐行处理结果集,而不是处理整个结果集。游标是通过游标库来...
实验分析与小结部分,学生应总结实验过程中遇到的问题、解决办法以及对游标使用的深入理解。这有助于巩固理论知识,提高实际操作技能,并可能引导学生思考如何优化游标操作,减少不必要的资源消耗,以实现更高效的...
在VB(Visual Basic)编程中,连接SQL数据库并利用...总结,VB通过ADO连接SQL数据库,使用游标可以高效处理结果集,而存储过程则能提升性能和安全性。理解并熟练运用这些技术,对于任何VB开发者来说都是至关重要的。
在Oracle数据库中,游标是一种非常重要的机制,它允许用户在程序中对查询结果进行逐行处理。游标分为两种主要类型:**隐式游标**和**显示游标**。此外,还可以利用游标进行循环处理,以实现更复杂的数据操作需求。 ...
总结起来,使用JdbcTemplate的游标滚动技术,我们可以实现高效、低内存消耗的分页,这对于处理大量数据的系统来说至关重要。同时,这种方式也使得代码更加灵活,能够适应各种数据库的差异,提高了程序的可移植性。
SQL 语句和游标总结 SQL 语句和游标是数据库管理系统中两个非常重要的概念。游标提供了一种从表中检索数据并进行操作的灵活手段,主要用在服务器上,处理由客户端发送给服务器端的 SQL 语句,或是批处理、存储过程...
ExecuteReader用于获取数据集的只读、向前只读游标;ExecuteScalar用于执行返回单个值的查询,如COUNT(*)。 总的来说,ADO.NET通过SqlConnection和SqlCommand提供了一套全面的工具,使得在C#中进行数据库操作变得...