Oracle编程,遇到并发的情况处理

简介: 在实际业务处理,特别是在统计报表数据时,经常会遇到并发的情况。 在实际工作中,我遇到过类似的情况,大概情况是这样的: 在统计报表的时候需要,用户前台点击生成,当2个用户登陆,同时点击报表生成时,会出现报表数据重复的现在。这当然是,一个用户点击生成时,后台数据还没有完全跑完,然后有一个用户点击,又重新跑刚才的同一个过程,并且入参都一样,这就导致重复数据的出现。 现在想到一个处理方法如下
在实际业务处理,特别是在统计报表数据时,经常会遇到并发的情况。
在实际工作中,我遇到过类似的情况,大概情况是这样的:
在统计报表的时候需要,用户前台点击生成,当2个用户登陆,同时点击报表生成时,会出现报表数据重复的现在。这当然是,一个用户点击生成时,后台数据还没有完全跑完,然后有一个用户点击,又重新跑刚才的同一个过程,并且入参都一样,这就导致重复数据的出现。
现在想到一个处理方法如下:


create table tb_test (is_yx varchar2(1));


 select t.is_yx into vi_result1
      from tb_test t;


   if vi_result1=1 then
     loop
      select t.is_yx into vi_result1
      from tb_test t;
      if vi_result1=1 then
      select sysdate into start_time from dual;
      loop
      select sysdate into end_time from dual;
      exit when (end_time-start_time)*24*60*60 >=60;
      end loop;
      else
      exit;
      end if;
     end loop;
   end if;


在过程里,处理数据前加上该段判断,紧接着
update tb_test t set t.is_yx=1;
      commit;


数据处理完再做如下处理
update tb_test t set t.is_yx=0;
      commit;


这样就可以一直等待该数据处理完再处理下一个
目录
相关文章
|
6月前
|
Oracle Java 关系型数据库
JSP struts2工资管理系统myeclipse开发oracle数据库bs框架java编程网结构
JSP 工资管理系统是一套完善的struts2设计系统MVC结构,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle10g,使用java语言开发,系统主要采用B/S模式开发。
47 1
|
6月前
|
Oracle Java 关系型数据库
JSP停车场车位管理系统myeclipse开发oracle数据库BS模式java编程网
JSP 停车场车位管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servlet+bean+dao (mvc模式开发),系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g,使用java语言开发系统主要采用B/S模式开发。
38 0
|
SQL Oracle 关系型数据库
Oracle并行和并发收集统计信息
Oracle并行和并发收集统计信息
315 0
|
SQL 存储 运维
Oracle数据库 | Oracle并发与一致性
Oracle数据库 | Oracle并发与一致性
243 0
Oracle数据库 | Oracle并发与一致性
|
SQL Oracle 关系型数据库
Oracle之pl/sql编程(一)函数,过程,包
pl/sql是什么? pl/sql是oracle在标准sql语言上的扩展。不仅允许嵌入sql语言,还可以定义常量和变量,允许使用条件语句和循环语句,允许使用例外处理各种错误。
987 0
|
Java 关系型数据库
OAF_开发系列26_实现OAF中Java类型并发程式开发oracle.apps.fnd.cp.request(案例)
20150730 Created By BaoXinjian 一、摘要 并发程序调用Java类型的Concurrent Program 主要实现类 1. runProgram(CpContext cpContext):并发程序导入接口 2.
1520 0
|
SQL Oracle Java
OAF_开发系列25_实现OAF中Java类型并发程式开发oracle.apps.fnd.cp.request(概念)
20150719 Created By BaoXinjian 一、摘要 在是使用Form/Report/SQL等并发程式时,集中在数据的操作和处理上,但是在事物处理与系统交互有很大的局限性,没有Java程序方便, 因此需要EBS系统中注册并运行Java并发程序,通过Java的强大功能实现EBS的功能扩展   在Oracle EBS中的Java并发程序(Java Concurrent Program)是系统功能中的一个亮点,它的出现使得用户可以在ERP系统中运行自己定义的Java程序。
1853 0

推荐镜像

更多