忙碌了几天写出来的oracle存储过程在作业中执行。

写的oracle存储过程如果有什么不好的地方大家指点指点。

oracle存储过程其中使用到游标嵌套、if、if嵌套、数据插入表、select插入表、退出游标循环。

CREATE OR REPLACE
PROCEDURE "ENTKK" AS
BEGIN DECLARE
one_val VARCHAR2();
ent_code NUMBER;
ENT_NAME VARCHAR2();
PRO_OP_TYPE VARCHAR2();
ENT_TYPE_NAME VARCHAR2();
EAT_TYPE VARCHAR2();
CGLX VARCHAR2();
LIC_ID VARCHAR2();
LIC_CODE VARCHAR2();
VALID_FROM_DATE DATE;
VALID_TO_DATE DATE;
COPY_COUNT NUMBER;
UNIT_ID VARCHAR2();
UNIT_IDNUM NUMBER;
LIC_STATE_ID VARCHAR2();
lic_state VARCHAR2();
LIC_ISSUE_TIME DATE;
SIGNER VARCHAR2();
LIC_ISSUE_AUTH VARCHAR2();
Guid VARCHAR2();
PRIL_NAME VARCHAR2();
JOB_ID VARCHAR2();
PER_ID VARCHAR2();
ENT_LEGAL_REP_ID VARCHAR2();
JOB_NAME VARCHAR2();
WORK_TYPE VARCHAR2();
PER_NAME VARCHAR2();
SEX VARCHAR2();
NATION_ID VARCHAR2();
NATION VARCHAR2();
CER_TYPE_ID VARCHAR2();
CER_TYPE_NAME VARCHAR2();
OFFICE_TEL VARCHAR2();
MOBILE VARCHAR2();
ENT_ID VARCHAR2();
REG_ADDR VARCHAR2();
AREA_CODE VARCHAR2();
REG_ADDR_POSTAL_CODE VARCHAR2();
ENT_EMAIL VARCHAR2();
ENT_PROPERTY_ID VARCHAR2();
ENT_PROPERTY_NAME VARCHAR2();
UNITE_CREDIT_NO VARCHAR2();
PK_IDZ VARCHAR2();
WORK_SCOPE VARCHAR2();
cursor var_one is SELECT PK_ID,LIC_ID,LIC_NO,FOOD_OPER_NAME,DOM,DOM_CODE,OPLOC,PRIL_NAME,PRIL_NO,POS TAL_CODE,FIX_TEL,FAX,EMAIL,PRO_OP_TYPE,
VAL_FROM,VAL_TO,COPY_NUM,ISS_AUTH,STATE,APPRO_DATE,EMP_NUM,HEALTH_EXAM_NUM, DINING_SEATS,ECO_NATURE,NET_OP,CENTRAL_KIT,TRANSPORT_DEPT,
NET_ADDR,ALLOW_PER,"STORAGE",AUTO_SELL,XYDM,IS_ENTITY_SHOP,IS_BULK_DELI_SAL E,IS_SINCE_WINE_SALE,PRO_OP_ITEM_DETAIL,ISS_AUTH_DETAIL,
PRO_OP_TYPE_DETAIL,CGLX,EAT_TYPE,IS_SCHOOL_CANT,LIC_STATE_ID FROM SP_JY_LIC_INFO WHERE ROWNUM< and FAX is null;
cursor var_two is SELECT PER_KIND,"TYPE","NAME",SEX,NATION,CER_TYPE,TEL,MOB_TEL from SP_JY_LIC_PER_INFO where lic_id= one_val; BEGIN for one_row in var_one LOOP
dbms_output.put_line('单程外层循环代码处');
one_val:= one_row.LIC_ID;
--获取各种值
ENT_NAME:=one_row.FOOD_OPER_NAME;
select count(*) into isdet from ENT_BASIC where ENT_NAME=ENT_NAMEZ;
if isdet= THEN
insert into AA(Name) VALUES(ENT_NAMEZ);
--不符合条件的退出return;
return;
end IF;
PRO_OP_TYPE:=one_row.PRO_OP_TYPE;
EAT_TYPE:=one_row.EAT_TYPE;
CGLX:=one_row.CGLX;
If PRO_OP_TYPE='' then
PRO_OP_TYPE := '';
ENT_TYPE_NAME := '某字符串';
Elsif PRO_OP_TYPE='' then
PRO_OP_TYPE := '' + CGLX;
if CGLX='' then
ENT_TYPE_NAME:='某字符串';
Elsif CGLX='' then
ENT_TYPE_NAME:='某字符串';
Elsif CGLX='' then
ENT_TYPE_NAME:='某字符串';
Elsif CGLX='' then
ENT_TYPE_NAME:='某字符串';
Else
ENT_TYPE_NAME:='某字符串';
PRO_OP_TYPE := '';
end if;
Elsif PRO_OP_TYPE='' then
PRO_OP_TYPE := '' + EAT_TYPE;
if EAT_TYPE='' THEN
ENT_TYPE_NAME := '某字符串';
Elsif EAT_TYPE='' THEN
ENT_TYPE_NAME := '某字符串';
Elsif EAT_TYPE='' THEN
ENT_TYPE_NAME := '某字符串';
ELSE
ENT_TYPE_NAME := '某字符串';
PRO_OP_TYPE := '';
end if;
End if;
LIC_ID:=one_row.LIC_ID;
LIC_CODE:=one_row.LIC_NO;
---9月 -
VALID_FROM_DATE:=to_date(one_row.VAL_FROM,'yyyy-MM-dd');
VALID_TO_DATE:=to_date(one_row.VAL_TO,'yyyy-MM-dd');
COPY_COUNT:=one_row.COPY_NUM;
UNIT_ID:=one_row.ISS_AUTH;
UNIT_IDNUM:="LENGTH"(UNIT_ID);
if UNIT_IDNUM= THEN
UNIT_ID := UNIT_ID+'';
ELSIF UNIT_IDNUM= THEN
UNIT_ID := UNIT_ID+'';
ELSIF UNIT_IDNUM= THEN
UNIT_ID := UNIT_ID+'';
END if;
LIC_STATE_ID:=one_row.STATE;
if LIC_STATE_ID='' THEN
LIC_STATE_ID := '';
lic_state := '某字符串';
ELSIF LIC_STATE_ID='' THEN
LIC_STATE_ID := '';
lic_state := '某字符串';
ELSIF LIC_STATE_ID='' THEN
LIC_STATE_ID := '';
lic_state := '某字符串';
end if;
LIC_ISSUE_TIME:=to_date(one_row.APPRO_DATE,'yyyy-MM-dd');
SIGNER:=one_row.ALLOW_PER;
LIC_ISSUE_AUTH:=one_row.ISS_AUTH_DETAIL;
PRIL_NAME:=one_row.PRIL_NAME;
Guid:=LOWER(RAWTOHEX(sys_guid()));
dbms_output.put_line(Guid);
--获取ENT_CODE
SELECT CODEID into ent_code from code;
ent_code :=ent_code+;
UPDATE code set CODEID=ent_code ;
for two_row in var_two LOOP
--处理内循环
dbms_output.put_line('内层循环代码处');
JOB_ID:=two_row.PER_KIND;
PER_ID:=LOWER(RAWTOHEX(sys_guid()));
if JOB_ID='' THEN
JOB_ID := '';
JOB_NAME := '某字符串';
ENT_LEGAL_REP_ID := PER_ID;
ELSIF JOB_ID='' THEN
JOB_ID := '';
JOB_NAME := '某字符串';
ELSIF JOB_ID='' THEN
JOB_ID := '';
JOB_NAME := '某字符串';
ELSE
JOB_ID := '';
JOB_NAME := '某字符串';
end if;
WORK_TYPE:=two_row."TYPE";
insert into ENT_PERSON_JOB (ID,ENT_CODE,JOB_ID,JOB_NAME,WORK_TYPE,ENT_NAME,ENT_TYPE_ID,ENT_TYPE_NAME,P ER_ID)
values( RAWTOHEX(sys_guid()),ent_code, JOB_ID, JOB_NAME, WORK_TYPE, ENT_NAME, PRO_OP_TYPE, ENT_TYPE_NAME, PER_ID);
PER_NAME:=two_row."NAME";
SEX:=two_row.SEX;
if SEX='' THEN
SEX := '';
end if;
if NATION_ID= THEN NATION_ID := ''; NATION := '某字符串 ';
ELSIF NATION_ID= THEN NATION_ID := ''; NATION := '某字符串';
ELSIF NATION_ID= THEN NATION_ID := ''; NATION := '某字符串';
END IF;
CER_TYPE_ID:=trim(two_row.CER_TYPE);
if CER_TYPE_ID='' THEN
CER_TYPE_NAME := '某字符串';
ELSIF CER_TYPE_ID='' THEN
CER_TYPE_NAME := '某字符串';
ELSIF CER_TYPE_ID='' THEN
CER_TYPE_NAME := '某字符串';
ELSE
CER_TYPE_ID := '';
CER_TYPE_NAME := '某字符串';
END IF;
OFFICE_TEL:=two_row.TEL;
MOBILE:=two_row.MOB_TEL;
insert into ENT_PERSON (PER_ID,PER_NAME,SEX,NATION_ID,NATION,CER_TYPE_ID,CER_TYPE_NAME,OFFICE_TEL, MOBILE)
values(PER_ID, PER_NAME, SEX, NATION_ID, NATION, CER_TYPE_ID, CER_TYPE_NAME, OFFICE_TEL, MOBILE);
dbms_output.put_line('内循环完毕');
END LOOP;
--单程循环
dbms_output.put_line('单程外层循环代码处');
insert into ENT_LICENSE (LIC_ID,LIC_CODE,VALID_FROM_DATE,VALID_TO_DATE,COPY_COUNT,UNIT_ID,LIC_STATE _ID,lic_state,LIC_ISSUE_TIME,SIGNER,LIC_ISSUE_AUTH,ENT_CODE)
values(Guid, LIC_CODE, VALID_FROM_DATE, VALID_TO_DATE, COPY_COUNT, UNIT_ID, LIC_STATE_ID, lic_state, LIC_ISSUE_TIME, SIGNER, LIC_ISSUE_AUTH, ent_code);
ENT_ID:=LOWER(RAWTOHEX(sys_guid()));
REG_ADDR:=one_row.DOM;
AREA_CODE:=one_row.DOM_CODE;
REG_ADDR_POSTAL_CODE:=one_row.POSTAL_CODE;
ENT_EMAIL:=one_row.POSTAL_CODE;
ENT_PROPERTY_ID:=one_row.ECO_NATURE;
if ENT_PROPERTY_ID='' THEN
ENT_PROPERTY_NAME:='某字符串';
ELSIF ENT_PROPERTY_ID='' THEN
ENT_PROPERTY_NAME:='某字符串';
ELSIF ENT_PROPERTY_ID='' THEN
ENT_PROPERTY_NAME:='某字符串';
ELSIF ENT_PROPERTY_ID='' THEN
ENT_PROPERTY_NAME:='某字符串';
END IF;
UNITE_CREDIT_NO:=one_row.XYDM;
insert into ENT_BASIC (ENT_CODE,ENT_NAME,REG_ADDR,AREA_CODE,REG_ADDR_POSTAL_CODE,ENT_EMAIL,ENT_PR OPERTY_ID,ENT_PROPERTY_NAME,UNITE_CREDIT_NO,ENT_ID,ENT_LEGAL_REP,ENT_LEGAL_ REP_ID)
values(ent_code, ENT_NAME, REG_ADDR, AREA_CODE, REG_ADDR_POSTAL_CODE,ENT_EMAIL, ENT_PROPERTY_ID, ENT_PROPERTY_NAME, UNITE_CREDIT_NO,ENT_ID, PRIL_NAME, ENT_LEGAL_REP_ID);
PK_IDZ:=one_row.PK_ID;
insert into ENT_FOOD_BIZ_EXT (EXTEND_ID,ent_code,BIZ_PLACE_ADDR,WORKER_COUNT,PHYSICAL_COUNT,SEATS_COUNT, IS_HAVE_NETWORK_BIZ,IS_HAVE_CENTRAL_KITCHEN,IS_MEAL_DELIVER,WEB_URL,STORAGE _ADDRESS,HAS_AUTO_SELL_EQUIP,HAS_STORES,IS_BULK_COOKED_FOOD,IS_HOME_BREWED, IS_SCHOOL)
SELECT RAWTOHEX(sys_guid ()),ent_code,OPLOC,EMP_NUM,HEALTH_EXAM_NUM,DINING_SEATS,NET_OP,CENTRAL_KIT, TRANSPORT_DEPT,NET_ADDR,STORAGE,AUTO_SELL,IS_ENTITY_SHOP,IS_BULK_DELI_SALE, IS_SINCE_WINE_SALE,IS_SCHOOL_CANT from sp_jy_lic_info where PK_ID=PK_IDZ ;
WORK_SCOPE:=one_row.PRO_OP_ITEM_DETAIL;
insert into ENT_TYPE_RELATION (ID,ENT_CODE,ENT_TYPE_ID,ENT_TYPE_NAME,WORK_SCOPE)
values(LOWER(RAWTOHEX(sys_guid())), ent_code, PRO_OP_TYPE, ENT_TYPE_NAME, WORK_SCOPE);
insert into ENT_EQUIP (ID,ENT_CODE,ENT_TYPE_ID,EQUIP_NAME,EQUIP_COUNT,EQUIP_POSITION,REMARK)
SELECT RAWTOHEX(sys_guid ()),ent_code,PRO_OP_TYPE,NAME,COUNT_NO,PLACE,REMARK from SP_JY_SAFE_INFO where LIC_ID=one_val; update SP_JY_LIC_INFO set FAX='' where LIC_ID=one_val;
dbms_output.put_line(ent_code); END LOOP;
--结尾处的
dbms_output.put_line('结尾');
END;
END;

oracle

oracle大数据匹配处理C#的更多相关文章

  1. 使用JDBC处理Oracle大数据

    一.Oracle中大数据处理 在Oracle中,LOB(Large Object,大型对象)类型的字段现在用得越来越多了.因为这种类型的字段,容量大(最多能容纳4GB的数据),且一个表中可以有多个这种 ...

  2. 利用jdbc处理oracle大数据---大文件和二进制文件

    一.Oracle中大数据处理 在Oracle中,LOB(Large Object,大型对象)类型的字段现在用得越来越多了.因为这种类型的字段,容量大(最多能容纳4GB的数据),且一个表中可以有多个这种 ...

  3. JavaWeb学习总结(三十五)——使用JDBC处理Oracle大数据

    一.Oracle中大数据处理 在Oracle中,LOB(Large Object,大型对象)类型的字段现在用得越来越多了.因为这种类型的字段,容量大(最多能容纳4GB的数据),且一个表中可以有多个这种 ...

  4. Oracle 大数据集成实施

    Oracle 大数据实施架构 Oracle为广大客户提供了一个预装的用于测试和学习目的的免费大数据环境.你可以在这个环境中对Oracle大数据一体机(Big Data Appliance)上的可选软件 ...

  5. JavaWeb(三十五)——使用JDBC处理Oracle大数据

    一.Oracle中大数据处理 在Oracle中,LOB(Large Object,大型对象)类型的字段现在用得越来越多了.因为这种类型的字段,容量大(最多能容纳4GB的数据),且一个表中可以有多个这种 ...

  6. Oracle大数据解决方案》学习笔记5——Oracle大数据机的配置、部署架构和监控-1(BDA Config, Deployment Arch, and Monitoring)

    原创预见未来to50 发布于2018-12-05 16:18:48 阅读数 146  收藏 展开 这章的内容很多,有的学了. 1. Oracle大数据机——灵活和可扩展的架构 2. Hadoop集群的 ...

  7. Oracle大数据常见优化查询

    [转]http://www.cnblogs.com/myhappylife/p/5006774.html 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的 ...

  8. Oracle大数据量查询实际分析

    Oracle数据库: 刚做一张5000万条数据的数据抽取,当前表同时还在继续insert操作,每分钟几百条数据. 该表按照时间,以月份为单位做的表分区,没有任何索引,当前共有14个字段,平均每个字段3 ...

  9. JDBC 复习3 存取Oracle大数据 clob blob

    1 目录结构记得导包咯 mysql oracle 2 代码,DBUtil工具类见前面的随笔博文 package dbex.mysql; import java.io.BufferedReader; i ...

随机推荐

  1. [MIP]mip-script组件自定义 JS 代码使用限制

    自mip升级v2版本后,多了一个mip-script组件,很多人就都以为可以写自定义js代码了!然并卵,MIP2页中还是一样不允许自定义javascript代码,所有的交互须通过组件实现. 引用官方说 ...

  2. JQ 封装全选函数

    单击时触发效果: 如果有一个没有选中把全选的勾去了,如果select所有的都选中了,那就把全选勾上 html里: <div class="row cl"> <la ...

  3. centos 7 关闭IPtables

    systemctl status iptables.service systemctl stopiptables.service

  4. poj 2393 奶牛场生产成本问题 贪心算法

    题意:有一个奶牛场,第i周的生产成本为c,需要数量为 y,每周的存储成本为s.问怎么安排使得成本最低? 思路: 成本最低是吧?求出每周的最低成本*该周需要的数量就是成本最低 每周的成本有两个:自己本周 ...

  5. REPLACE(替换字段内容)

    语法: REPLACE <str1> WITH <str2> INTO <c> [LENGTH <l> ]. ABAP/4 搜索字段 <c> ...

  6. Android面试收集录 Android系统的资源+其他

    1.Android应用程序的资源是如何存储的,如何使用? res文件夹或者assets文件夹 res目录中的资源在R类中生成一个int变量,然后再布局文件中可以直接使用,在代码中,要getResour ...

  7. 插件开发遇到的坑------final 型变量,编译过程被优化

    android 插件开发遇到的坑 今天遇到一个坑,pdf 插件,调用了主工程的一个静态final 字符串,但是主工程里面已经没有这个字符串了,却没有崩溃. 后来同事说,因为字符串可能已经直接被写死了. ...

  8. ActiveMQ测试实例

    ActiveMQ的安装与启动 1 下载ActiveMQ:http://activemq.apache.org/download.html 2 下载后解压到任意文件夹,解压后文件夹内的目录为: 3 进入 ...

  9. python内置模块[sys,os,os.path,stat]

    python内置模块[sys,os,os.path,stat] 内置模块是python自带功能,在使用内置模块时,需要遵循 先导入在 使用 一.sys 对象 描述 sys.argv 命令行参数获取,返 ...

  10. 平衡二叉树(AVL Tree)

    在学习算法的过程中,二叉平衡树是一定会碰到的,这篇博文尽可能简明易懂的介绍下二叉树的相关概念,然后着重讲下什么事平衡二叉树. (由于作图的时候忽略了箭头的问题,正常的树一般没有箭头,虽然不影响描述的过 ...