关于oracle批量处理数据

用游标逐条数据更新实在是太慢了,并且在同一个表中进行一系列的查询后删除、删除后插入很有可能会循环过载,因此批量处理数据很重要,下面是我在项目中写的一小部分存储过程的部分功能操作,主要实现的是把同类数据的数量相加后重新插入数据,去除其余重复数据,废话不说,上代码

begin
    --V_STEP    := 5;
    insert into T_BU_FUTURE_ORDER_EI_TMP
        (FACTORY_CODE,
         Ei_Code,
         Car_Type_Code,
         Produce_Date,
         CAPACITY,
         MODIFIER)
        select FACTORY_CODE,
               Ei_Code,
               Car_Type_Code,
               Produce_Date,
               sum(t.capacity),
               ‘sum‘
          from T_BU_FUTURE_ORDER_EI_TMP t
         where 1 = 1
         group by FACTORY_CODE, Ei_Code, Car_Type_Code, Produce_Date;
  end;
  begin
    delete T_BU_FUTURE_ORDER_EI_TMP t
    where t.modifier != ‘sum‘;
  end;

时间: 2024-08-07 15:15:31

关于oracle批量处理数据的相关文章

Oracle批量插入数据SQL语句太长出错:无效的主机/绑定变量名

Oracle数据库,用mybatic批量插入数据: <insert id="saveBatch" parameterType="io.renren.entity.NodeDataEntity" databaseId="oracle"> insert into "NODE_DATA" ( "NODE_ID", "DATA_TIME", "DATA_VALUE"

oracle批量增加数据

记工作需要用到的一个批量插入数据的脚本. declare code_ number(10) := 100000; num_ number(10) := 2000000; error_message exception;begin for i in 100 .. 1000 loop num_ := num_ + 1; code_ := code_ + 1; insert into tpj_gf_ma_invoiceinfo values (i, num_, code_,); end loop; c

Oracle批量插入数据

学习了:http://blog.csdn.net/chenleixing/article/details/45165761/ 膜拜一下,引用原文: 那么有没有其他方法呢??答案是有的,也许熟悉oracle数据库的可能知道从oracle9i版本以后,可以使用一种方法即:"INSERT ALL INTO a表 VALUES(各个值) INTO a表 VALUES (其它值) INTO a表 VALUES(其它值) ....再跟一个SELECT 语句".后边跟的SELECT 语句我们可以从虚

关于oracle批量插入数据遇到的问题

截取部分日志信息: 2015-09-01 14:48:47,132 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] - Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]2015-09-01 14:48:47,178 INFO [org.spr

161011、oracle批量插入数据

需求:从一张表中查询数据插入到另外一张表 -- Created on 2016/10/13 by RICK declare -- Local variables here begin for item in (select t.* from zc_tr_order_currency t where t.sys_corder_code='101303002') loop insert into ZC_TR_APPRAISE (id,CASH_CODE,USER_ID,USER_NAME,APPR_

mybaits实现oracle批量新增数据,回填主键

项目有需求,百度了很久,反正他们说的方法,我都没成功,我也不知道是不是我写代码的姿势不正确,没办法只能自己想法子了 我们这个项目用到了通过Mapper,通用Mapper里通过OracleProvider 实现批量插入,好像可以通过KeySql注解可以自动生成主键, 生成的sql里有这个 <bind name="country_idGenIdBind" value="@[email protected](record, 'countryId', @[email prote

Oracle 批量造数据

1.通过存储过程方式 CREATE OR REPLACE procedure XXZY.p_test is i number; begin for i in 1..210000 loop INSERT INTO test_job VALUES(i,'张三'||to_char(i)); end LOOP; EXCEPTION WHEN OTHERS THEN DBMS_output.PUT_LINE(SQLERRM); end p_test; /

Java通过Mybatis实现批量插入数据到Oracle中

最近项目中遇到一个问题:导入数据到后台并将数据插入到数据库中,导入的数据量有上万条数据,考虑采用批量插入数据的方式: 结合网上资料,写了个小demo,文章末尾附上demo下载地址 1.新建项目:项目目录结构如下图所示,添加相应的jar包 2.新建数据库表:ACCOUNT_INFO 1 CREATE TABLE ACCOUNT_INFO ( 2 "ID" NUMBER(12) NOT NULL , 3 "USERNAME" VARCHAR2(64 BYTE) NULL

mybatis批量插入数据到oracle

mybatis 批量插入数据到oracle报 ”java.sql.SQLException: ORA-00933: SQL 命令未正确结束“  错误解决方法 oracle批量插入使用 insert all into table(...) values(...) into table(...) values(...) select * from dual; 语句来解决,但一直报如下错误 ### The error may involve ApplaudDaoImpl.addList-Inline