功能:将某个入库批次中号码数量等于40的札拆分成两札
declare row1 number;
cursor cr1 is
--取得要拆分的札库存记录
select * from sim_card_zha_resource_ where zha_num_ in(
select zha_num_ from (
select zha_num_,count(id_) amount_ from sim_card_detail_
where status_ not in('RESOURCE_STATUS_12','RESOURCE_STATUS_14')
and zha_num_ like '20080328135622_%'
having count(id_)=40
group by zha_num_)
) order by id_ asc;
begin
row1 := 100;
for x in cr1 --对数据集进行遍历处理
loop
row1 := row1 + 1;
[u]dbms_output.put_line[/u](row1);
declare row2 number;
cursor cr2 is
select * from sim_card_detail_ where zha_num_=[u]x.zha_num_[/u] order by id_ asc;
begin
row2 := 0;
for y in cr2
loop
row2 := row2 + 1;
--从第21条记录开始,这些记录将被分配到新的札中。这里需要添加新的札记录。
if(row2 = 21) then
insert into sim_card_zha_resource_(id_,send_org_id_,receive_org_id_,card_type_id_,box_num_,zha_num_,amount_,is134_,input_date_time_,last_active_date_,status_,input_sid_)
values(row1,x.send_org_id_,x.receive_org_id_,x.card_type_id_,x.box_num_,x.zha_num_ || '_2',20,x.is134_,x.input_date_time_,x.last_active_date_,x.status_,x.input_sid_);
update sim_card_zha_resource_ set amount_=20 where id_=x.id_;
end if;
--更新号码的札编号
if(row2 > 20) then
update sim_card_detail_ set zha_num_=x.zha_num_ || '_2' where id_=y.id_;
end if;
end loop;
dbms_output.put_line(x.zha_num_ || '_2');
end;
end loop;
end;
分享到:
相关推荐
Oracle 游标是 Oracle 数据库中的一种重要概念,用于查询数据库,获取记录集合(结果集)的指针。游标可以看作是一个临时表,你可以对其每一行的数据进行任意的操作。本文将对 Oracle 游标的概念、分类、声明方式、...
在"游标.txt"文件中,可能包含了更多关于Oracle游标的使用实例和技巧,包括游标的声明、动态游标、游标变量、游标表达式以及游标在存储过程和函数中的应用。这些内容可以帮助你更深入地理解和掌握Oracle游标,提高你...
通过学习这些案例,你可以了解如何在实际应用中灵活运用Oracle游标,包括在存储过程、触发器等高级功能中。案例中的7-游标使用很可能是对各种游标操作的具体示例,如打开、关闭、提取数据、循环处理等,有助于加深...
#### 一、Oracle游标概述 在Oracle数据库中,游标(Cursor)是一种用于处理SQL查询结果集的方式。它允许用户逐行地读取和处理查询结果,这对于需要对每一行数据进行特定操作的情况非常有用。游标可以分为显式游标和...
#### 一、Oracle游标简介 在Oracle数据库中,游标是一种重要的机制,用于处理查询结果集。它允许用户通过PL/SQL编程语言逐行访问和处理查询返回的数据记录。游标可以是显式定义的(即在程序中声明并控制)或隐式...
总之,Oracle游标提供了处理查询结果的强大工具,使开发者能够灵活地在PL/SQL中操作数据。无论是隐式还是显式游标,都极大地增强了对数据库的交互能力,使得程序能根据查询结果进行适当的操作。理解并熟练运用游标是...
根据提供的标题、描述以及部分代码内容,我们可以详细探讨Oracle游标的使用方法,特别是明确游标(Explicit Cursor)和隐式游标(Implicit Cursor)的区别及其具体应用方式。 ### Oracle游标简介 在Oracle数据库中...
Oracle 游标是 PL/SQL 程序中的一种重要组件,用于处理查询结果集。游标可以分为隐式游标和显式游标两种,隐式游标由 PL/SQL 管理,隐式游标打开时查询开始,查询结束时隐式游标自动关闭。显式游标需要在 PL/SQL 块...
Oracle游标是数据库管理系统中的一种数据处理机制,它允许用户按需逐行处理查询结果,而不是一次性加载所有数据。在Java编程中,我们通常通过JDBC(Java Database Connectivity)来与Oracle数据库交互,其中游标扮演...
#### 一、Oracle游标简介 在Oracle数据库中,游标是一种用于处理查询结果集的强大工具。它允许用户通过逐行访问数据来执行复杂的操作,如更新、删除或插入记录等。游标可以分为显式游标和隐式游标两种类型,其中...
在这个例子中,我们首先声明了一个游标cursor_name,然后定义了变量来存储查询结果。接着,我们打开游标,进入一个循环,每次循环从游标中提取一行数据到变量中,直到没有更多数据(%NOTFOUND为真)。 SQL中的游标...
游标(Cursor)是 PL/SQL 中的一种数据访问机制,通过游标,可以访问和处理数据库中的数据。游标可以认为是一个指向数据库中特定记录的指针,通过游标,可以读取、插入、更新和删除数据库中的数据。 二、游标的类型...
### Oracle游标使用详解 #### 一、游标概述 游标是Oracle数据库中用于处理查询结果集的强大工具,尤其适用于需要逐行处理查询结果的情况。在Oracle中,游标可以分为两类:**显式游标**和**隐式游标**。 1. **隐式...
### Oracle游标优化 ...通过上述方法,可以在一定程度上优化Oracle游标的性能,从而提高应用程序的整体响应时间和资源利用率。需要注意的是,每种优化策略都应该根据具体的业务需求和技术环境来选择和实施。
综上所述,Oracle游标及其相关概念是PL/SQL编程中不可或缺的一部分,它们为数据处理提供了强大的工具和灵活性。正确理解和运用游标、%TYPE属性、DML语句以及事务控制等概念,对于高效开发和维护Oracle数据库应用程序...
首先,让我们来理解Oracle游标。游标是数据库系统提供的一种机制,允许用户在结果集上进行迭代,一次处理一行数据。在PL/SQL中,游标用于检索SQL查询返回的结果集,并按需逐行处理。以下是一个简单的游标使用示例: ...
Oracle游标是数据库管理系统中的一种重要机制,它允许程序员逐行处理查询结果集,而不仅仅是一次性获取所有数据。游标类似于C语言中的指针,能够灵活、高效地处理多条记录,尤其在需要循环处理或者根据当前行数据做...