Oracle 隐式游标 存储过程
--隐式游标 注意变量赋值用(:=) 连接符用(||)而不是加号(+)
DECLARE
v_pk T_PLAT_KEYWORD.ID%TYPE; --主键
v_amount_message T_PLAT_KEYWORD_STATISTIC.AMOUNT%TYPE;
v_amount_talk T_PLAT_KEYWORD_STATISTIC.AMOUNT%TYPE;
CURSOR CUR IS
SELECT DISTINCT B.NAME,B.TYPE,B.WEIXIN_PK FROM T_PLAT_KEYWORD B;
BEGIN
FOR MY_CUR IN CUR LOOP
v_pk:=SEQ_PLAT_KEYWORD_STATISTIC.NEXTVAL; --主键赋值 SELECT COUNT(1) INTO v_amount_message FROM T_WEBCALL_TALK A WHERE TO_CHAR(SUBSTR(A.CONTENT,0,1000)) LIKE '%'||MY_CUR.NAME||'%';
SELECT COUNT(1) INTO v_amount_talk FROM T_WEIXIN_MESSAGE T WHERE T.MESSAGE LIKE '%'||MY_CUR.NAME||'%'; INSERT INTO T_PLAT_KEYWORD_STATISTIC (ID,NAME,AMOUNT,WEIXIN_PK,TYPE,CREATE_TIME)
VALUES (v_pk,MY_CUR.NAME,(v_amount_message+v_amount_talk),MY_CUR.WEIXIN_PK ,MY_CUR.TYPE,to_char(SYSDATE,'yyyy-MM-dd HH:mm:ss'));
END LOOP;
END; --DELETE FROM T_PLAT_KEYWORD_STATISTIC
--SELECT to_char(SYSDATE,'yyyy-MM-dd HH:mm:ss') FROM dual
--TO_CHAR(SUBSTR(A.CONTENT,0,1000)) 将clob转换成字符串
-- Create sequence 创建序列
/*create sequence SEQ_PLAT_KEYWORD_STATISTIC
minvalue 1
maxvalue 999999999999
start with 11
increment by 1
nocache;*/ --将游标加入到存储过程
CREATE OR REPLACE PROCEDURE PLAT_KEYWORD_STATISTIC IS
V_PK T_PLAT_KEYWORD.ID%TYPE; --主键
V_AMOUNT_MESSAGE T_PLAT_KEYWORD_STATISTIC.AMOUNT%TYPE;
V_AMOUNT_TALK T_PLAT_KEYWORD_STATISTIC.AMOUNT%TYPE;
CURSOR CUR IS
SELECT DISTINCT B.NAME, B.TYPE, B.WEIXIN_PK FROM T_PLAT_KEYWORD B;
BEGIN
FOR MY_CUR IN CUR LOOP
V_PK := SEQ_PLAT_KEYWORD_STATISTIC.NEXTVAL; --主键赋值 SELECT COUNT(1)
INTO V_AMOUNT_MESSAGE
FROM T_WEBCALL_TALK A
WHERE TO_CHAR(SUBSTR(A.CONTENT, 0, 1000)) LIKE
'%' || MY_CUR.NAME || '%';
SELECT COUNT(1)
INTO V_AMOUNT_TALK
FROM T_WEIXIN_MESSAGE T
WHERE T.MESSAGE LIKE '%' || MY_CUR.NAME || '%'; INSERT INTO T_PLAT_KEYWORD_STATISTIC (ID, NAME, AMOUNT, WEIXIN_PK, TYPE, CREATE_TIME) VALUES (V_PK, MY_CUR.NAME, (V_AMOUNT_MESSAGE + V_AMOUNT_TALK), MY_CUR.WEIXIN_PK, MY_CUR.TYPE, TO_CHAR(SYSDATE, 'yyyy-MM-dd HH:mm:ss'));
END LOOP;
EXCEPTION
WHEN TOO_MANY_ROWS THEN
DBMS_OUTPUT.PUT_LINE('返回值多于1行');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('关键字统计存储过程出错!');
END PLAT_KEYWORD_STATISTIC;
Oracle 隐式游标 存储过程的更多相关文章
- Oracle游标cursor1基础和隐式游标
--指向表行的指针,一次一行,一般向前移动 Resultset --游标永远代代表的是一行数据. /* 使用步骤 第一步:声明游标,就像是声明一个变量样. 游标的关键字就是cursor. Declar ...
- 【Oracle】PL/SQL 显式游标、隐式游标、动态游标
在PL/SQL块中执行SELECT.INSERT.DELETE和UPDATE语句时,Oracle会在内存中为其分配上下文区(Context Area),即缓冲区.游标是指向该区的一个指针,或是命名一个 ...
- ORACLE的显式游标与隐式游标
1)查询返回单行记录时→隐式游标: 2)查询返回多行记录并逐行进行处理时→显式游标 显式游标例子: DECLARE CURSOR CUR_EMP IS SELECT * FROM EMP; ROW_E ...
- oracle的隐式游标
游标的概念: 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理, ...
- Oracle异常处理内容,隐式游标
异常处理 create or replace procedure pr_test3(v_bh in varchar2,v_xx out t_hq_ryxx%rowtype) is begin sele ...
- Oracle pl/sql 显示游标和隐式游标
显示游标 一.定义语法: CURSOR <游标名> IS <SELECT 语句> [FOR UPDATE | FOR UPDATE ...
- PL/SQL -->隐式游标(SQL%FOUND)
PL/SQL -->隐式游标(SQL%FOUND) 分类: SQL/PLSQL 基础2010-12-22 16:23 4084人阅读 评论(0) 收藏 举报 sqlexceptionoracle ...
- PL/SQL — 隐式游标
一.隐式游标的定义及其属性 定义 隐式游标由系统自动定义,非显示定义游标的DML语句即被赋予隐式游标属性.其过程由oracle控制,完全自动化.隐式游标的名称是SQL,不能对SQL游标显式地执行OPE ...
- ORACLE隐式类型转换
隐式类型转换简介 通常ORACLE数据库存在显式类型转换(Explicit Datatype Conversion)和隐式类型转换(Implicit Datatype Conversion)两 ...
随机推荐
- TMS320F28379D 使用心得之 SCI
原文地址https://blog.csdn.net/qq_39545674/article/details/82597106 一.SCI 简介SCI(Serial Communication Inte ...
- malloc()与calloc区别【转】
转自:http://blog.csdn.net/firecityplans/article/details/4490124/ 版权声明:本文为博主原创文章,未经博主允许不得转载. Both the m ...
- 跨平台的EVENT事件 windows linux
#ifndef _HIK_EVENT_H_ #define _HIK_EVENT_H_ #ifdef _MSC_VER #include <Windows.h> #define hik_e ...
- 解决:laravel出现Please provide a valid cache path.
SVN检出版本库上的项目后,访问首页出现如下提示: Please provide a valid cache path. 解决方法如下: 1.确保storage目录下有如app,framework,v ...
- MVC 视图与控制器传值的几种方法
一.页面取值传给控制器 1.表单传值----利用Action 视图页: <form action="方法名" method="post" ...
- (6)sql/puls
host 在sql/puls中使用cmd或linux操作系统的命令
- Flip Game -- LeetCode
You are playing the following Flip Game with your friend: Given a string that contains only these tw ...
- 安裝jpeg-6b png error错误解决方法
安裝jpeg-6b png error错误解决方法 默认安裝jpeg-6b shell> wget ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar. ...
- iOS import framework头文件时报错could not build module xxx
导致这个错误的原因有多种: 1.库的search paths没有设置对. 2.库里面某些头文件找不到. 而导致.h头文件找不到的原因也有多种: (a)search paths没设置对,文件可能换过位置 ...
- Android UI 常用图标尺寸规范
1. 程序启动图标: LDPI (Low Density Screen,120 DPI),其图标大小为 36 x 36 px. MDPI (Medium Density Screen, 160 DPI ...