用法限制

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

REF CURSOR 概述

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

概述

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

游标属性

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

声明游标变量

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

关闭游标

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

游标 FOR 循环

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

将%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 语句添加到上一个示例中,因此现在结果集将返回到两个变量中,然后显示。请注意,用于确定静态游标游标状态的游标属性也可以与游标变量结合使用。...

DBMS_SQL

存储过程CLOSE_CURSOR关闭一个已打开的游标。当关闭游标后,释放分配给游标的资源,并且不能再使用这个游标。CLOSE_CURSOR(c IN OUT INTEGER)参数 参数名称 描述 c 要关闭游标的ID。示例 在下面的示例中,关闭了一个先前已打开的游标:...

关闭游标变量

与静态游标不同,游标变量不必在再次重新打开之前关闭。之前打开的结果集将丢失。通过添加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语句后的游标...

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

游标提取行

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

创建子函数

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

创建存储过程

无法以这种方式更改存储过程的名称或参数类型(如果您尝试,实际上创建的是一个新的不同存储过程)。使用 OUT 参数时,除非通过删除存储过程,否则不能更改任何 OUT 参数的类型。CREATE[OR REPLACE]PROCEDURE name (parameters)]...

HybridDB for MySQL

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

文件存储 HDFS

阿里云文件存储HDFS(Apsara File Storage for HDFS)是面向阿里云ECS实例及容器服务等计算资源的文件存储服务。文件存储HDFS允许您就像在Hadoop分布式文件系统(Hadoop Distributed File System) 中管理和访问数据。您无需对现有大数据分析...

DROP PROCEDURE

删除存储过程。语法DROP PROCEDURE[IF EXISTS]name[([[argmode][argname] argtype][,.])][CASCADE|RESTRICT]说明 DROP PROCEDURE 删除现有程序的定义。要执行该命令,您必须是超级用户或存储过程的所有者。如果这是一个重载存储过程,则...

对象存储 OSS

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

数据库文件存储

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

表格存储 Tablestore

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

云原生关系型数据库 PolarDB MySQL引擎

PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。100%兼容MySQL 5.6/5.7/8.0,PostgreSQL 11,高度兼容Oracle

存储网关

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

云原生关系型数据库 PolarDB PostgreSQL引擎

PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。100%兼容MySQL 5.6/5.7/8.0,PostgreSQL 11,高度兼容Oracle。本...

云原生关系型数据库 PolarDB O引擎

PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。100%兼容MySQL 5.6/5.7/8.0,PostgreSQL 11,高度兼容Oracle。\n本...

概述

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

混合云存储阵列

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

文件存储 CPFS

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

文件存储 NAS

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

内置的安全审计规则

查看XP_REGREAD存储过程(SQLSERVE语法)高 数据库探测 利用SYS_CONTEXT查询 高 数据库探测 查询ORACLE_SID 高 数据库探测 探测数据库_表_字段名及数量(MYSQL语法)高 数据库探测 判断是否是MSSQL 中 数据库探测 获取数据库信息(SQLSERVE...

CREATE PROCEDURE

无法以这种方式更改存储过程的名称或参数类型(如果您尝试,实际上创建的是一个新的不同存储过程)。使用 OUT 参数时,除非通过删除存储过程,否则不能更改任何 OUT 参数的类型。参数 参数 说明 name name 是存储过程的标识符。...

概述

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

关闭结果集和对象

如果没有显式关闭ResultSet 和 Statement 对象,可能会发生严重的内存泄漏,也可能耗尽数据库中的游标。同时关闭 ResultSet 和 Statement 对象将释放数据库中相应的游标。如果仅关闭结果集,则不会释放游标。示例:同时关闭 ResultSet 对象...
< 1 2 3 4 ... 200 >
跳转至: GO

新品推荐

你可能感兴趣

热门推荐

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