`

存储过程-插入数据

 
阅读更多
create or replace procedure BACKUP_INVENTORY 
as
 type balance is ref cursor;
 balanceDaylly balance;
INV_ID NUMBER(19);LOCATION_ID NUMBER(19);
ITEM_KEY_ID VARCHAR2(50);PACKAGE_UNIT_ID VARCHAR2(50);
QUANTITY FLOAT;QUANTITY_BU FLOAT;PUTAWAY_QUANTITY_BU FLOAT;
ALLOCATED_QUANTITY_BU FLOAT;STATUS VARCHAR2(100);
HASH_CODE VARCHAR2(80);BE_QUALITY NUMBER(1);

begin
 open balanceDaylly for select i.id,i.location_id,i.item_key_id,i.package_unit_id
 ,i.quantity,i.quantity_bu,i.putaway_quantity_bu,i.allocated_quantity_bu
 ,i.status,i.hash_code,i.be_quality 
 from wms_inventory i;
loop
  fetch balanceDaylly into INV_ID,LOCATION_ID,ITEM_KEY_ID,PACKAGE_UNIT_ID,QUANTITY
  ,QUANTITY_BU,PUTAWAY_QUANTITY_BU,ALLOCATED_QUANTITY_BU,STATUS,HASH_CODE
  ,BE_QUALITY;
  exit when balanceDaylly%notfound;
  insert into WMS_INVENTORY_BACKUP
           values(INV_ID,LOCATION_ID,ITEM_KEY_ID,PACKAGE_UNIT_ID,QUANTITY
  ,QUANTITY_BU,PUTAWAY_QUANTITY_BU,ALLOCATED_QUANTITY_BU,STATUS,HASH_CODE
  ,BE_QUALITY,SYSDATE);
end loop;
exception
    when others
      then rollback;
close balanceDaylly;
commit;
end;

------------

--SQL> set serveroutput on;
--SQL> exec BACKUP_INVENTORY;

 

分享到:
评论

相关推荐

    存储过程(循环插入数据)

    本文将深入探讨如何利用存储过程中的循环结构——FOR LOOP,来批量插入数据,并讨论在不同环境中执行存储过程时可能遇到的问题。 在Oracle中,存储过程可以通过PL/SQL(Procedural Language extensions to SQL)...

    MySQL创建存储过程批量插入10万条数据

    MySQL创建存储过程批量插入10万条数据 存储过程 1、首先防止主键冲突,我们清空表。 TRUNCATE table A_student; 2、编写存储过程 delimiter ‘$’; CREATE PROCEDURE batchInsert(in args int) BEGIN declare i int ...

    oracle 批量插入数据存储过程

    oracle 批量插入数据存储过程。亲测好用。支持 plsql ,toad,等数据库分析软件。主要包括变量的定义,循环及游标的使用等, 亲测好用

    用SQL批量插入数据的存储过程

    循环插入: 代码如下: DECLARE @MyCounter INT SET @MyCounter = 0 /*设置变量*/ WHILE (@MyCounter < 2) /*设置循环次数*/ BEGIN WAITFOR DELAY ‘000:00:10’ /*延迟时间10秒*/ INSERT INTO time_by_day (time_...

    百万数据批量插入存储过程

    mysql 数据库已存储过程插入一千万条测试数据!利用项目即将上限需要,可以完全系统的测试项目性能!里面又完整的文档和各项说明:打开文档就可以实际操作。

    存储过程游标用于批量的插入数据

    ### 存储过程与游标的综合应用:批量插入数据 #### 一、存储过程简介 在数据库管理系统(DBMS)中,存储过程是一种预编译的SQL代码块,它可以接受输入参数并返回输出值,类似于编程语言中的函数或过程。通过创建...

    存储过程-01.存储过程简介

    在实际项目中,存储过程常用于批量插入数据、计算统计信息、实现事务控制等。例如,一个典型的库存管理系统的存储过程可能包括: - `UpdateStock`:接收产品ID和数量,更新库存记录。 - `InsertOrder`:接收订单详情...

    存储过程-05.存储过程和函数结合使用

    1. 数据验证:在存储过程中,可以调用自定义函数来检查输入数据的有效性,确保只有符合业务规则的数据才能被插入或更新到数据库中。 2. 计算和转换:如果需要对大量数据进行复杂的计算,可以编写一个函数,存储过程...

    链表的创建-插入-删除(数据结构 c编译)

    ### 数据结构C语言编程:链表的创建、插入与删除 #### 一、链表的基本概念 链表是一种常见的线性表存储结构,它通过一组任意的存储单元来存储线性表中的数据元素。每个存储单元称为一个节点(node),每个节点包含两...

    C语言版的排序方法---插入排序.docx

    插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。这种排序方式在数据量小或者部分有序的情况下...

    c++数据结构--插入排序

    由于插入排序是原地排序,因此不需要额外的存储空间,空间复杂度为O(1)。 综上所述,插入排序适用于小规模数据或部分有序的数据集。尽管其效率不如更高级的排序算法,但其简洁性使其成为学习排序算法的良好起点。

    算法-数据结构和算法-11-插入排序.rar

    插入排序是原地排序算法,不需要额外的存储空间,因此空间复杂度为O(1)。 ### 插入排序的应用场景: - 对于小规模数据或部分有序的数据,插入排序的效率较高。 - 在结合其他高级排序算法(如快速排序、归并排序)...

    SQLServer用存储过程实现插入更新数据示例

    在本示例中,我们关注的是如何使用存储过程实现插入更新数据的功能,这通常在数据同步或者避免重复数据时非常有用。 首先,让我们详细分析给出的存储过程代码: ```sql CREATE PROC Insert_Update @Id varchar(20...

    排序算法-插入排序

    - 在插入过程中,可以使用交换操作而不是连续移动元素,减少元素的移动次数。 - 对于大数据量,可以考虑结合其他高效的排序算法,如快速排序、归并排序等。 9. **代码实现**: 从提供的`InsertionSort.cpp`文件...

    Oracle存储过程-1.docx

    Oracle存储过程是数据库管理系统中的一种重要工具,用于创建和执行一系列复杂的SQL和PL/SQL语句,以实现特定的业务逻辑或数据处理任务。在Oracle数据库中,存储过程可以提高性能,减少网络流量,并增强安全性,因为...

    批量增加测试数据----存储过程

    在提供的内容中,展示了一个名为`insertc4`的存储过程,其功能是在指定的表`tabalename.WS_KEHUXINXI`中批量插入数据。下面对该存储过程进行详细的解析: ##### 函数定义 ```sql create or replace function ...

    oracle数组存储过程批量插入

    在Java示例中,我们还看到了如何为大数据量插入创建Oracle对象类型和数组类型,以及相应的存储过程。这种方式允许我们在单次调用中插入大量记录,显著提高了效率。在处理大量数据时,批量操作比逐条操作更高效,因为...

    存储过程-根据类型合并相邻的票据

    这种特定的存储过程可能被设计用来优化数据处理,尤其是在处理大量连续记录时,比如日志系统或财务交易记录。 描述中提到的“代码”和“博文链接”表明有一个具体的实现示例可以在给定的博客文章中找到。通过这个...

    向kafka插入数据测试

    这个场景中,我们关注的是“向Kafka插入数据”的测试。这涉及到多个知识点,包括Kafka的基本概念、生产者API、数据模型、以及如何进行测试。 1. **Kafka基本概念**:Kafka是一个高吞吐量、低延迟的消息队列系统,它...

Global site tag (gtag.js) - Google Analytics