DECLARE

本文介绍了DECLARE的语法、参数以及示例等内容。简介 DECLARE 允许用户创建游标,游标可以被用来在大型查询暂停时检索少量的行。游标被创建后,可以用 FETCH 从中取得行。语法 DECLARE name[BINARY][INSENSITIVE][[NO]SCROLL]CURSOR[{ WITH...

验证数据压缩能力

在存储程序中可以使用系统变量和用户定义变量,存储程序可以使用 DECLARE 来定义局部变量,存储例程(过程和函数)可以声明参数,以在例程及其调用者之间传递值。更多内容参见 存储程序的变量。操作步骤 打开新的 SQL 窗口。单击 请选择...

API说明

pageStart-页面开始加载的函数原型为:/*页面开始加载*@param pageName 页面名称*/export declare function pageStart(pageName:string):void;pageUpdate-页面更新的函数原型为:/*页面更新*@param pageName 页面名称*/export declare ...

Linux实例

27:*"declare-x MAIL="/var/spool/mail/root"declare-x OLDPWD="/etc/profile.d"declare-x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"declare-x PWD="/root"declare-x SHELL="/bin/bash"declare-x SHLVL="1...

子类型

示例 DECLARE SUBTYPE subtype_char IS VARCHAR(10);sub_var subtype_char;base_var VARCHAR(10);BEGIN NULL;END;其中,sub_var 和 base_var 的类型实际上是一致的,都表示了一个长度受到限制的varchar类型。基本类型可以是任何标量或用户...

记录变量

DECLARE TYPE r_type IS RECORD(id INT,name VARCHAR(10));v1 r_type;方式1 v2 test%ROWTYPE;方式2 v3 v2%TYPE;方式3 BEGIN.END;在PL/SQL块中定义的记录类型是局部类型。它仅在块中可用,对外部不可见。当记录类型在包中被声明时,它才存储...

局部程序

DECLARE-外层匿名块,当然也可以是全局过程[FUNCTION]-局部函数 name([[argmode][argname]argtype[{ DEFAULT|=} default_expr][,.]]){RETURNS|RETURN} rettype {AS|IS}[DECLARE]-局部函数声明段.BEGIN-局部函数程序段.RETURN.END;...

DBMS_LOB

\x3131323233414142424343 DECLARE dest_lob CLOB;BEGIN dest_lob:='11223344';DBMS_LOB.COPY(dest_lob,'AABBCCDDEEFF',6,6,1);DBMS_OUTPUT.PUT_LINE(dest_lob);END;11223AABBCC ERASE 删除LOB数据中指定位置的部分数据的过程。语法 DBMS_...

API说明

error日志的函数原型为:/*error日志*@param module module名称*@param tag tag名称*@param content 日志内容*/export declare function error(module:string,tag:string,content:string):void;warn日志的函数原型为:/*warn日志*@param ...

创建触发器

非 DROP DDL 事件触发器函数 CREATE OR REPLACE FUNCTION public.oms_capture_ddl_for_non_dropped()RETURNS event_trigger LANGUAGE 'plpgsql' COST 100 VOLATILE NOT LEAKPROOF SECURITY DEFINER AS$BODY$DECLARE ddl_text text;DECLARE ...

SPL 块结构

以下是块的一般结构:[[DECLARE]pragmas declarations]BEGIN statements[EXCEPTION WHEN exception_condition THEN statements[,.]]END;pragmas是指令(AUTONOMOUS_TRANSACTION是当前支持的pragma)。declaration是块局部的一个或多个变量...

DELETE

DECLARE TYPE nt_type IS TABLE OF INT;nt nt_type:=nt_type(1,2);BEGIN nt.delete(1);RAISE NOTICE '%',nt(1);抛出异常,访问已经被删除的元素 END;结果显示如下:ERROR:cannot access deleted element CONTEXT:PL/SQL function inline_...

通过触发器和函数实现PostgreSQL的DDL增量迁移

CREATE FUNCTION public.dts_capture_ddl()RETURNS event_trigger LANGUAGE 'plpgsql' COST 100 VOLATILE NOT LEAKPROOF SECURITY DEFINER AS$BODY$declare ddl_text text;declare max_rows int:=10000;declare current_rows int;declare ...

变长数组

' 示例 变长数组的基本示例如下所示:DECLARE TYPE varray_type IS VARRAY(10)OF INT;声明 varray 局部类型 v varray_type:=varray_type();创建变量,并将它初始化为空 BEGIN v.extend(1);扩建它的大小,之后允许在索引为1的位置上赋值和取值...

特殊用法

DECLARE TYPE r_type IS RECORD(id INT,name VARCHAR(10));TYPE nt_type IS TABLE OF r_type;nt nt_type;BEGIN SELECT*BULK COLLECT INTO nt FROM test;FORALL i IN INDICES OF nt INSERT INTO test_backup VALUES nt(i);END;SELECT*FROM ...

声明游标变量

DECLARE emp_refcur SYS_REFCURSOR;声明用户定义的 REF CURSOR 类型变量 您必须执行两个不同的声明步骤,才能使用用户定义的 REF CURSOR 变量:创建引用的游标 TYPE。基于该 TYPE 声明实际的游标变量。用于创建用户定义的 REF CURSOR 类型...

关联数组

二维关联数组支持的场景 在只有一维关联数组的情况下,如果需要实现类似二维关联数组的功能,需要使用一个中转表间接实现,示例如下:DECLARE type TB1 is table of varchar(10)index by varchar(10);type TB2 is table of TB1 index by ...

集合变量的赋值

DECLARE TYPE char_col1 IS VARRAY(3)OF CHAR(5);TYPE char_col2 IS VARRAY(3)OF CHAR(5);TYPE int_col IS VARRAY(3)OF INT;group1 char_col1:=char_col1('1','2','3');group2 char_col2;group3 int_col;BEGIN group2:=group1;不同的集合...

DBMS_PIPE

SESSION A:DECLARE str VARCHAR2:='Character data';status INTEGER;BEGIN DBMS_PIPE.PACK_MESSAGE(str);SEND_MESSAGE status is:0 status:=DBMS_PIPE.SEND_MESSAGE('messages');DBMS_OUTPUT.PUT_LINE('SEND_MESSAGE status is:'|status);...

DBMS_ALERT

以下是表dept和emp上定义的触发器:CREATE OR REPLACE TRIGGER dept_alert_trig AFTER INSERT OR UPDATE OR DELETE ON dept DECLARE v_action VARCHAR2(25);BEGIN IF INSERTING THEN v_action:=' added department(s)';ELSIF UPDATING THEN...

错误和消息

可以在捕获异常后通过 SQLCODE 获取异常号,通过 SQLERRM 获取异常信息,如下所示:DECLARE.BEGIN.EXCEPTION WHEN OTHERS THEN RAISE NOTICE '%',sqlcode,sqlerrm;END;事务行为 PL/SQL程序总是运行在一个事务中。当具有EXCEPTION块的时候,...

DBMS_OBFUSCATION_TOOLKIT

md5-\x0cc175b9c0f1b6a831c399e269772661(1 row)DECLARE message_digest RAW;BEGIN DBMS_OBFUSCATION_TOOLKIT.MD5(input=>utl_raw.cast_to_raw('a'),checksum=>message_digest);\x0cc175b9c0f1b6a831c399e269772661 DBMS_OUTPUT.PUT_LINE...

概述

测试表数据 通过如下语句生成测试数据:delimiter|CREATE PROCEDURE populate_0(IN NUM INT)BEGIN DECLARE sid INT;DECLARE suffix_name INT;DECLARE i INT;SET sid=1000;SET suffix_name=10;SET i=1;START TRANSACTION;WHILE i(seller_id,...

DDL异步IO

测试表数据 通过如下语句生成测试数据:delimiter|CREATE PROCEDURE populate_0(IN NUM INT)BEGIN DECLARE sid INT;DECLARE suffix_name INT;DECLARE i INT;SET sid=1000;SET suffix_name=10;SET i=1;START TRANSACTION;WHILE i(seller_id,...

引用对象

下面是此匿名块的输出:Employee No:9001 Name:JONES Street:123 MAIN STREET City/State/Zip:EDISON,NJ 08817 以下匿名块创建 dept_obj_typ 的实例并调用成员存储过程 display_dept:DECLARE v_dept DEPT_OBJ_TYP:=dept_obj_typ(20);...

CREATE TRIGGER

语法 CREATE[OR REPLACE]TRIGGER name { BEFORE|AFTER|INSTEAD OF } { INSERT|UPDATE|DELETE }[OR { INSERT|UPDATE|DELETE }][,.]ON table[REFERENCING { OLD AS old|NEW AS new }.][FOR EACH ROW][WHEN condition][DECLARE[PRAGMA ...

DBMS_SQL

DECLARE c int;a int[];b varchar[];ca numeric[];BEGIN c:=DBMS_SQL.OPEN_CURSOR();DBMS_SQL.PARSE(c,'insert into test values(:a,:b,:c)',DBMS_SQL.NATIVE);a:=ARRAY[1,2,3];b:=ARRAY['Alice','Bob','Cindy'];ca:=ARRAY[5,4,3];DBMS_SQL...

栅格模型

st_height-1241(1 rows)创建金字塔 DO$declare rast raster;begin select raster_obj into rast from raster_table where id=1;rast=st_buildpyramid(rast);update raster_table set raster_obj=rast where id=1;end;LANGUAGE 'plpgsql';DO...

DDL多路归并排序

测试表数据 通过如下语句生成测试数据:delimiter|CREATE PROCEDURE populate_0(IN NUM INT)BEGIN DECLARE sid INT;DECLARE suffix_name INT;DECLARE i INT;SET sid=1000;SET suffix_name=10;SET i=1;START TRANSACTION;WHILE i(seller_id,...

关联数组

' 示例 以下是一个关联数组的基本示例:DECLARE TYPE aarray_type IS TABLE OF INT INDEX BY VARCHAR(10);声明 associative array 局部类型 aarray aarray_type;创建变量,并将它初始化为空 BEGIN aarray('a'):=1;赋值 RAISE NOTICE '%',...

DBMS_CRYPTO

DECLARE enc_typ integer;enc_res raw;BEGIN enc_typ:=dbms_crypto.ENCRYPT_DES+dbms_crypto.CHAIN_CBC+dbms_crypto.PAD_PKCS5;enc_res:=dbms_crypto.encrypt(utl_raw.cast_to_raw('1234567890!qwertyuiop'),enc_typ,utl_raw.cast_to_raw('...

DDL预读

测试表数据 通过如下语句生成测试数据:delimiter|CREATE PROCEDURE populate_0(IN NUM INT)BEGIN DECLARE sid INT;DECLARE suffix_name INT;DECLARE i INT;SET sid=1000;SET suffix_name=10;SET i=1;START TRANSACTION;WHILE i(seller_id,...

存储过程

只支持一种异常处理(当fetch cursor时没有更多数据时),且格式固定,declare not found for cursor begin {iterate label|leave label|set statement};end 表示当没有更多数据时,重新开始一个循环,跳出一个循环或者set某个变量,示例...

声明

例如,这个函数工作在任何具有一个+操作符的数据类型上:CREATE FUNCTION add_three_values(v1 anyelement,v2 anyelement,v3 anyelement)RETURN anyelement IS DECLARE result ALIAS FOR$0;BEGIN result:=v1+v2+v3;RETURN result;END;通过...

DBMS_PIPE

显示结果如下:CREATE_PIPE status:0 SEND_MESSAGE status:0 SEND_MESSAGE status:0 接收第一条消息,然后打开:DECLARE v_item VARCHAR2(80);v_status INTEGER;BEGIN v_status:=DBMS_PIPE.RECEIVE_MESSAGE('pipe',1);DBMS_OUTPUT.PUT_LINE...

TRIM

DECLARE TYPE nt_type IS TABLE OF INT;nt nt_type:=nt_type(1);BEGIN RAISE NOTICE '%',nt(1);nt.trim();销毁最后一个元素 RAISE NOTICE '%',nt(1);访问越界 END;结果显示如下:NOTICE:1 ERROR:subscript beyond count CONTEXT:PL/SQL ...

全局集合类型

DECLARE v v_type:=v_type(1,2,3);BEGIN FOR i IN v.first.v.last LOOP RAISE NOTICE '%',v(i);END LOOP;END;结果显示如下:NOTICE:1 NOTICE:2 NOTICE:3 DO 如果同名的全局集合类型和局部集合类型同时存在,由于就近查找原则,PL/SQL会使用...

DBMS_SESSION

DECLARE val VARCHAR2(20);BEGIN DBMS_SESSION.SET_CONTEXT('test_ctx','a','1');val:=SYS_CONTEXT('test_ctx','a');DBMS_OUTPUT.PUT_LINE('a of test_ctx is:'|val);DBMS_SESSION.CLEAR_CONTEXT('test_ctx',NULL,'a');val:=SYS_CONTEXT('...

DBMS_UTILITY

'|lname(i)|' a.b.c.d b c select1 DECLARE lname DBMS_UTILITY.LNAME_ARRAY;length integer;list varchar2;BEGIN list:='a.b.c.d,b,c,select1';DBMS_UTILITY.COMMA_TO_TABLE(list,length,lname);FOR i IN 1.length LOOP DBMS_OUTPUT.PUT_...

EXTEND

以下示例演示如何使用EXTEND方法将单个null元素附加到集合:DECLARE TYPE sparse_arr_typ IS TABLE OF NUMBER;sparse_arr sparse_arr_typ:=sparse_arr_typ(-100,-10,0,10,100);v_results VARCHAR2(50);BEGIN DBMS_OUTPUT.PUT_LINE('COUNT:'...
共有8条 < 1 2 3 4 ... 8 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
弹性公网IP 短信服务 人工智能平台 PAI 金融分布式架构 对象存储 物联网平台
新人特惠 爆款特惠 最新活动 免费试用