用法限制

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

REF CURSOR 概述

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

游标属性

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

阿里云高校特惠,助力学生创业梦!0元体验,快速入门云计算!

建个炫酷的简历网页,制作一个浪漫的表白网页,打造个人专属网盘,多种动手场景应用免费学!!!
广告

将%ROWTYPE 与游标结合使用

以下是此存储过程的输出。EXECemp_info;SMITHworksindepartment20ALLENworksindepartment30WARDworksindepartment30JONESworksindepartment20MARTINworksindepartment30BLAKEworksindepartment30CLARKworksindepartment10...

关闭游标

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

声明游标变量

SPL支持使用SYS_REFCURSOR内置数据类型以及通过创建一种REFCURSOR,然后声明该类型的变量,来声明游标变量。SYS_REFCURSOR是一种REFCURSOR类型,允许任何结果集与之关联。这被称为弱类型 REFCURSOR。SYS_REFCURSOR和用户定义的REFCURSOR...

游标 FOR 循环

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

声明游标

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

示例

以下存储过程使用SELECT命令打开给定的游标变量,该命令检索所有行。CREATEORREPLACEPROCEDUREopen_all_emp(p_emp_refcurINOUTSYS_REFCURSOR)ISBEGINOPENp_emp_refcurFORSELECTempno,enameFROMemp;END;此变体使用SELECT命令打开给定的游标...

打开游标

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

游标变量获取行

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

概述

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

DBMS_SQL

DESCRIBECOLUMNSDESCRIBE_COLUMNS存储过程用于描述游标返回的列。DESCRIBE_COLUMNS(cINTEGER,col_cntOUTINTEGER,desc_tOUTDESC_TAB);参数参数名称描述c游标的ID。col_cnt游标结果集中列的数量。desc_tab包含游标所返回的每列的描述的表。...

关闭游标变量

与静态游标不同,游标变量不必在再次重新打开之前关闭。之前打开的结果集将丢失。通过添加CLOSE语句完善该示例。...以下是执行此存储过程时的输出。EXECemp_by_dept(20)EMPNOENAME-7369SMITH7566JONES7788SCOTT7876ADAMS7902FORD

参数化游标

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

打开一个游标变量

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

get_previous_cursor_time

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

创建子存储过程

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

游标提取行

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

PolarDB PostgreSQL 云原生数据库

阿里云自研的下一代关系型云数据库,“世界互联网领先科技成果”,兼容MySQL、PostgreSQL、Oracle语法,存储最高100TB,单库可扩展至16个节点,适用于企业多样化的应用场景。

创建子函数

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

PolarDB-O 云原生数据库

阿里云自研的下一代关系型云数据库,“世界互联网领先科技成果”,兼容MySQL、PostgreSQL、Oracle语法,存储最高100TB,单库可扩展至16个节点,适用于企业多样化的应用场景。

创建存储过程

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

PolarDB MySQL 云原生数据库

阿里云(Gartner全球数据库魔力象限领导者)自研的下一代关系型云数据库,兼容MySQL、PostgreSQL、Oracle语法,存储最高100TB,单库可扩展至16个节点,2020年双十一刷新数据库处理峰值记录,达1.4亿TPS。

HybridDB for MySQL

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

存储过程概述

name是存储过程的标识符,如果定义了[ORREPLACE]并且在模式中已经存在了有相同名字的存储过程,那么新创建的存储过程将替代已存在的存储过程。反之,新创建的存储过程将无法替代在同一模式下已存在的存储过程。parameters是一个正式参数的...

DROP PROCEDURE

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

文件存储 HDFS

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

对象存储 OSS

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

概述

包是命名的函数、过程、变量、游标、用户定义的记录类型以及使用通用限定符(即包标识符)引用记录的集合。包有以下特点:包提供了一种便捷方式来组织实现相关目的的函数和存储过程。使用包函数和存储过程的权限依赖于授予整个包的一个特权...

数据库文件存储

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

表格存储 Tablestore

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

存储网关

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

概述

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

概述

包是函数,存储过程,变量,游标,用户定义的记录类型和记录的集合,这些对象可以通过一个通用的限定符-包的标识符来引用。包的特点如下:包提供一种简便的方式把执行相关联目的的函数和存储过程组织在一起。用户必须对整个包上具有相应的...

混合云存储阵列

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

文件存储 CPFS

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

文件存储 NAS

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

CREATE PROCEDURE

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

内置的安全审计规则

存储过程XP_SENDMAIL(SQLServer语法)高存储过程滥用执行危险的操作,存储过程XP_RUNWEBTASK(SQLServer语法)高存储过程滥用执行危险的操作,存储过程XP_REGADDMULTISTRING(SQLServer语法)高存储过程滥用执行危险的操作,存储过程XP_...
< 1 2 3 4 ... 200 >
共有200页 跳转至: GO

新品推荐

你可能感兴趣

热门推荐

切换为移动版

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