ORACLE 學習筆記
proc 里的 commit等于提交
就是你做了insert或者update后,commit后才是真正修改或者插入了数据库中 如果不提交的话,那么这个表就被锁了
CURSOR MYCURSOR is --定義游標
SELECT A.APPLYKIND_NO,A.FAC_NO,A.BUILDING_NO,A.DEPTKIND_NO,A.DUTYRANK_NO,A.APPROVAL_SORT,A.APPROVALRANK_NO,
A.APPDEPT_NO,A.APPROVAL_TYPE,NVL(A.APPROVAL_MK,'N') APPROVAL_MK
FROM APPROVALSET_DUTY A
WHERE A.APPLYKIND_NO=VAPPLYKIND_NO
AND A.FAC_NO=VFAC
AND A.BUILDING_NO=NVL(VBUILDING,'A')
AND A.DEPTKIND_NO=(SELECT DEPTKIND_NO FROM APPDEPT WHERE APPDEPT_NO=VAPPDEPT_NO)
AND A.DUTYRANK_NO=VDUTYRANK_NO;
BEGIN
VFAC:=VFAC_NO;
if VFAC_NO='HR' THEN
VFAC:='311';
END IF;
IF VFAC_NO='HGHR' THEN
VFAC:='346';
END IF;
OPEN MYCURSOR; 開啟游標
LOOP --循环开始标志
--
FETCH MYCURSOR into VVAPPLYKIND_NO,VVFAC_NO,VVBUILDING_NO,VVDEPTKIND_NO,VVDUTYRANK_NO,
VVAPPROVAL_SORT,VVAPPROVALRANK_NO,VVAPPDEPT_NO,VVAPPROVAL_TYPE,VVAPPROVAL_MK;
3、属性
3.1、%ISOPEN 判断游标是否被打开,若打开,则%ISOPEN等于TRUE;否则等于FALSE。
3.2、%FOUND 判断游标所在行是否有效。若有效,则%FOUND等于TRUE;否则等于FALSE。
3.3、%NOTFOUND 与%FOUND相似,功能相反。
3.4、%ROWCOUNT 返回到当前位置为止,游标所读取的记录行数。
EXIT WHEN MYCURSOR%NOTFOUND;
-- DBMS_OUTPUT.PUT_LINE('aa'||'..'||'aa');--測試用
DELETE FROM APPROVAL_SET WHERE APPLY_NO=VAPPLY_NO AND APPDEPT_SORT=VVAPPROVAL_SORT;
DELETE FROM APPLY WHERE APPLY_NO=VAPPLY_NO ;
IF VVAPPROVAL_MK='Y' THEN
VAPPDEPT:=VAPPDEPT_NO;
ELSE
VAPPDEPT:= VVAPPDEPT_NO;
END IF;
INSERT INTO APPROVAL_SET(APPLY_NO,APPDEPT_SORT,APPLYKIND_NO,APPROVALRANK_NO,FAC_NO,APPDEPT_NO,APPROVAL_MK,APPROVAL_TYPE)
VALUES(VAPPLY_NO,VVAPPROVAL_SORT,VVAPPLYKIND_NO,VVAPPROVALRANK_NO,VVFAC_NO,VAPPDEPT,VVAPPROVAL_MK,VVAPPROVAL_TYPE);
INSERT INTO APPLY(APPLY_NO,APPLY_CONTENT,APPLY_DATE,FAC_NO,SEC_NO,APPLYDEPT_NO,APPLYKIND_NO,DUTYRANK_NO,APPLYUSER_NO,APPROVALFINISH_MK)
VALUES(VAPPLY_NO,VVFAC_NO||VSEC_NO||VAPPDEPT,VAPPLY_DATE,VVFAC_NO,VSEC_NO,VAPPDEPT,VVAPPLYKIND_NO,VDUTYRANK_NO,VAPPLYUSER_NO,'N');
COMMIT;
END LOOP;
CLOSE MYCURSOR;
COMMIT;
end;
最新文章
- 0.[WP Developer体验Andriod开发]之从零安装配置Android Studio并编写第一个Android App
- C语言结构体位域
- Hessian 二进制RPC协议框架
- java web统计当前访问用户数量
- 【C#】Json数据 排版算法
- iOS开发问题之Could not instantiate class named NSLayoutConstraint
- Error: L6218E: Undefined symbol TIM_ARRPreloadConfig (referred from pwm_output.o).
- 详细讲解 关于Linux静态库和动态库的分析
- 公交CPU卡原理
- 常用命令(ubuntu)
- 射频识别技术漫谈(26)——Felica的文件系统
- phpstrom 快捷键
- margin负值-内秀篇
- MyBatis 延迟加载
- Windows下检测文件名大小写是否匹配
- opencv 基本绘图函数
- PL/SQL学习笔记之变量、常量、字面量、字符串
- ios开发之--把秒转换为天时分秒
- 数据库--oracle图形化管理工具和新增自定义用户
- Centos7 安装 ActiveMq