概述

程序逻辑,该逻辑从结果集中检索一行,对该行中的数据进行一些处理,然后检索下一行并重复该存储过程游标最常用在 FOR 或 WHILE 循环的上下文中。SPL 逻辑中应包含一个条件测试,用于检测何时到达结果集的末尾,以便程序可以退出循环。

用法限制

此外,下表显示了用作存储过程或函数参数的游标变量允许的参数模式(具体取决于存储过程或函数中对游标变量的操作)。表 1.允许的游标变量参数模式 操作 IN IN OUT OUT OPEN 否 是 否 FETCH 是 是 否 CLOSE 是 是 否 例如,如果一个存储...

REF CURSOR 概述

游标变量是一个实际包含指向查询结果集的指针的...类型可以作为参数传递到存储过程和函数或从存储过程和函数传递。函数的返回类型也可以是 REF CURSOR 类型。这提供了通过在程序之间传递游标变量,来将游标上的操作模块化为单独程序的能力。

游标 FOR 循环

在目前为止提供的游标示例中,处理游标结果集所需的编程逻辑包括一个用于打开游标的语句、一个用于检索结果集的每一行的循环结构、一个用于结果集末尾的测试和一个用于关闭游标的语句。游标 FOR 循环是一个循环结构,使用户无需单独编写...

游标属性

每个游标都有%ISOPEN、%FOUND、%NOTFOUND 和%ROWCOUNT四个属性,用于测试游标的状态。本文为您介绍这些属性及示例。ISOPEN ISOPEN属性用于测试游标是否已打开。cursor_name%ISOPEN cursor_name是游标的名称,如果游标打开,将返回BOOLEAN...

关闭游标

游标结果集中检索到所有需要的行后,必须关闭游标。关闭后,将无法再访问结果集。...调用此存储过程时会生成以下输出。员工编号 7369,SMITH 是结果集的第一行。EXEC cursor_example;Employee Number:7369 Employee Name:SMITH

声明游标变量

在两种游标类型中,打开游标、选择游标和关闭游标等剩余用法都是相同的。对于本章的其余部分,我们的示例主要使用 SYS_REFCURSOR 游标。您只需要更改示例中的声明部分,以使其适用于用户定义的 REF CURSOR。说明 强类型 REF CURSOR 要求...

将%ROWTYPE 与游标结合使用

以下是此存储过程的输出。EXEC emp_info;SMITH works in department 20 ALLEN works in department 30 WARD works in department 30 JONES works in department 20 MARTIN works in department 30 BLAKE works in department 30 CLARK ...

声明游标

要使用游标,必须先在 SPL 程序的声明部分中声明它。游标声明如下所示:CURSOR name IS query;name 是一个标识符,将用于在程序的后面引用游标及其结果集。query 是一个 SQL SELECT 命令,该命令确定可由游标检索的结果集。下面是游标声明...

打开游标

在使用游标检索行之前,必须先将其打开。这将使用 OPEN 语句完成。OPEN name;name 是先前已在 SPL 程序的声明部分中声明的游标的标识符。OPEN 语句不得对已打开且仍处于打开状态的游标执行。下面显示了 OPEN 语句及其相应的游标声明。...

示例

以下存储过程使用 SELECT 命令打开给定的游标变量,该命令检索所有行。CREATE OR REPLACE PROCEDURE open_all_emp (p_emp_refcur IN OUT SYS_REFCURSOR)IS BEGIN OPEN p_emp_refcur FOR SELECT empno,ename FROM emp;END;此变体使用 SELECT...

游标变量获取行

打开游标变量后,可以使用 FETCH 语句从结果集中检索行。在下面的示例中,已将 FETCH 语句添加到上一个示例中,因此现在结果集将返回到两个变量中,然后显示。请注意,用于确定静态游标游标状态的游标属性也可以与游标变量结合使用。...

游标提取行

在打开游标后,可通过使用 FETCH 语句从该游标的结果集检索行。FETCH name INTO { record|variable[, variable_2].};name 是先前打开的游标的标识符。record 是先前定义的记录(例如,使用 table%ROWTYPE)的标识符。variable,variable_2....

关闭游标变量

与静态游标不同,游标变量不必在再次重新打开之前关闭。之前打开的结果集将丢失。通过添加CLOSE语句完善该示例。...以下是执行此存储过程时的输出。EXEC emp_by_dept(20)EMPNO ENAME-7369 SMITH 7566 JONES 7788 SCOTT 7876 ADAMS 7902 FORD

参数化游标

您还可以声明接受参数的静态游标,并在打开该游标时传递这些参数的值。在下面的示例中,我们创建了一个参数化游标,该游标将显示emp表中其薪水低于作为参数传递的指定值的所有员工的姓名和薪水。DECLARE my_record emp%ROWTYPE;CURSOR c1...

打开一个游标变量

声明游标变量后,必须使用关联的SELECT命令打开它。OPEN FOR语句指定用于创建结果集的SELECT命令。OPEN name FOR query;name是先前声明的游标变量的标识符。query是一个SELECT命令,用于在执行语句时确定结果集。执行OPEN FOR语句后的游标...

DBMS_SQL

存储过程DEFINE_COLUMN在SELECT列表中定义了一个列或者表达,这个列或者表达将在游标中返回和取出。DEFINE_COLUMN(c INTEGER,position INTEGER,column { BLOB|CLOB|DATE|FLOAT|INTEGER| NUMBER|TIMESTAMP|VARCHAR2 }[,column_size ...

get_previous_cursor_time

调用CLI命令根据游标(Cursor)获取前一个游标的服务端时间。请求语法aliyunlog log get_previous_cursor_time project_name=<value>-logstore_name=<value>-shard_id= cursor=[-normalize=][-access-id=] [-access-key=][-sts-token=][-...

创建子存储过程

声明部分中指定的PROCEDURE子句用于定义和命名该块本地的子存储过程。术语块指 SPL 块结构,该结构由可选的声明部分、必需的可执行部分和可选的异常部分组成。块是独立存储过程和函数、匿名块、子程序、触发器、包和对象类型方法的结构。...

游标结果集

游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。结果集分类结果集按照配置分为以下三种:常规结果集:一次获取到所有的结果,执行速度最快但容易...

创建子函数

块是独立存储过程和函数、匿名块、子程序、触发器、包和对象类型方法的结构。短语标识符是块本地的意味着标识符(即,变量、游标、类型或子程序)在该块的声明部分中声明,因此可由 SPL 代码在该块的可执行部分和可选异常部分中进行访问。...

文件存储 HDFS

\n\n文件存储HDFS适用于互联网行业、金融行业等有大数据计算与存储分析需求的行业客户,进行海量数据存储和离线计算的业务场景,充分满足以Hadoop为代表的分布计算业务类型对分布式存储性能、容量和可靠性的多方面要求。

对象存储 OSS

对象存储服务(Object Storage Service,OSS)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。

数据库文件存储

数据库文件存储(DBFS),是一款针对数据库场景的云原生共享文件存储服务。它基于共享存储架构设计,通过文件协议提供数据库定制功能,具备企业级存储特性。主要服务于云上自建数据库,基于传统SAN的应用等,为用户提供极致IO性能和高可用...

表格存储 Tablestore

表格存储(Tablestore)是构建在阿里云飞天分布系统之上的 NoSQL 数据存储服务,提供海量结构化数据的存储和实时访问。

存储网关

存储网关,是一款可在用户IDC和阿里云上部署的软网关,以阿里云OSS为后端存储,通过低成本的虚拟机服务器,给云上和云下应用提供业界标准的NFS和CIFS文件存储服务。

混合云存储阵列

混合云阵列(Hybrid Cloud Storage Array)是部署在IDC的一款硬件存储设备,提供本地文件和块存储服务,并且可以无缝的将数据迁移到云端。

文件存储 CPFS

CPFS(Cloud Paralleled File System)是一种并行文件系统。CPFS的数据存储在集群中的多个数据节点,并可由多个客户端同时访问,从而能够为大型高性能计算机集群提供高IOPS、高吞吐、低时延的数据存储服务。

概述

通过将SPL代码组织为子存储过程和子函数,可以有利地运用SPL存储过程和函数程序的能力和功能来构建结构良好且易于维护的程序。通过在SPL程序中声明子存储过程和子函数,可从相对较大的SPL程序中的不同位置多次调用相同的SPL代码。子存储...

文件存储 NAS

阿里云文件存储NAS是一个可共享访问,弹性扩展,高可靠,高性能的分布文件系统。兼容POSIX文件接口,可支持上千台弹性计算ECS、容器服务ACK等计算节点共享访问,您无需修改应用程序,即可无缝迁移业务系统上云。

创建存储过程

存储过程退出时配置参数将恢复为之前的值。普通的 SET 命令(没有 LOCAL)会重写 SET 子句,与对之前 SET LOCAL 命令的操作很相似,此命令的效果在退出存储过程后会保留,除非回滚当前事务。PRAGMA AUTONOMOUS_TRANSACTION PRAGMA ...

概述

游标管理 get_cursor 根据时间获取对应的游标。get_cursor_time 根据游标获取服务端时间。get_previous_cursor_time 根据前一个游标获取服务端时间。get_begin_cursor 获取BEGIN游标。get_end_cursor 获取END游标。日志管理 put_logs 写入...

关闭结果集和对象

使用完 ResultSet 和 Statement 对象后,必须执行显关闭。这适用于使用 OceanBase Connector/J 驱动程序创建的所有 ResultSet 和 Statement 对象。由于驱动程序没有收尾机制,ResultSet 和 Statement 类使用 close 方法执行清理例程。...

get_cursor_time

调用CLI命令根据游标(Cursor)获取服务端时间。请求语法aliyunlog log get_cursor_time project_name=<value>-logstore_name=<value>-shard_id= cursor=[-access-id=][-access-key=] [-sts-token=][-region-endpoint=][-client-name=] [-...

CREATE PROCEDURE

存储过程退出时配置参数将恢复为之前的值。普通的 SET 命令(没有 LOCAL)会重写 SET 子句,与对之前 SET LOCAL 命令的操作很相似,此命令的效果在退出存储过程后会保留,除非回滚当前事务。PRAGMA AUTONOMOUS_TRANSACTION PRAGMA ...

阿里云存储服务

阿里云提供针对各种存储资源(块、文件和对象)的低成本、高可靠、高可用的存储服务,涵盖数据备份、归档、容灾等场景。

HybridDB for MySQL

MySQL采用一份数据存储来进行OLTP和OLAP处理,解决了以往需要把一份数据进行多次复制来分别进行业务交易和数据分析的问题,极大的降低了数据存储的成本。\n\nHybridDB for MySQL 免去了以往在线数据库(Operational Database)和离线数据...

多端同步照片

注:发送第一次请求时,客户端B本地没有缓存的Cursor,所以它以0为Cursor开始发送请求。第二次请求:参数为Cursor t1,Direction='forward',size=5;无数据返回,NextCursor= EOF。此时,客户端不更改本地缓存的NextCursor值(依然为t1)...

在线迁移服务

阿里云在线迁移服务是阿里云提供的存储产品数据通道。使用在线迁移服务,您可以将第三方数据轻松迁移至阿里云对象存储 OSS,也可以在对象存储 OSS 之间进行灵活的数据迁移。

ListAlbumPhotos

forward表示获取比指定游标更新的数据,backward表示获取比指定游标更老的数据。默认值为forward Size Integer 否 指定服务端返回的最大记录条数,最大值为500。默认值为50。LibraryId String 否 照片库标识。采用AK认证时必选,采用STS...
< 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
对象存储 块存储 文件存储 云服务器 SSL证书 物联网无线连接服务 商标 短信服务
这些文档可能帮助您
存储类型介绍 什么是对象存储OSS 什么是云存储网关CSG 什么是文件存储NAS JavaScript客户端签名直传 计量项和计费项

新品推荐

你可能感兴趣

热门推荐

新人福利专场 阿里云试用中心 企业支持计划 飞天会员助力企业低成本上云 智能财税30天免费试用 云解析DNS新用户首购低至36元/年起 ECS限时升级特惠6.5折