declare
v_prov_ol_id varchar2(30);
begin
v_prov_ol_id := null;
select distinct pboie.prov_ol_id
into v_prov_ol_id
from pc_bo_order_item_ext pboie
where pboie.prov_ol_id in
(select poco.prov_ol_id
from pc_ol_customer_order poco
where poco.remark =
'生成party_identity失败,数据库异常信息:ORA-00001: 违反唯一约束条件 (CRM.PK_PARTY_IDENTITY)'
and poco.status != 'R'
and poco.status != 'D')
and pboie.soo_type = 'ADD_CUST_CERT_REQ_TYPE'
and rownum = 1;
dbms_output.put_line(v_prov_ol_id);
update pc_bo_order_item_ext pboie
set pboie.status = 'R'
where pboie.prov_ol_id = 'v_prov_ol_id'
and rownum = 1;
dbms_output.put_line('修改pc_bo_order_item_ext成功');
delete from cep_download_msg cdm where cdm.c_trans_id = 'v_prov_ol_id';
dbms_output.put_line('删除cep_download_msg成功');
update pc_ol_customer_order poco
set poco.status = 'LR'
where poco.prov_ol_id = 'v_prov_ol_id';
dbms_output.put_line('更新pc_ol_customer_order成功');
commit;
if v_prov_ol_id is null then
dbms_output.put_line('成功');
end if;
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('未找到数据');
end;
输出结果是
100201408250034182997
修改pc_bo_order_item_ext成功
删除cep_download_msg成功
更新pc_ol_customer_order成功
但是下面表的数据没有改变
求教育
v_prov_ol_id varchar2(30);
begin
v_prov_ol_id := null;
select distinct pboie.prov_ol_id
into v_prov_ol_id
from pc_bo_order_item_ext pboie
where pboie.prov_ol_id in
(select poco.prov_ol_id
from pc_ol_customer_order poco
where poco.remark =
'生成party_identity失败,数据库异常信息:ORA-00001: 违反唯一约束条件 (CRM.PK_PARTY_IDENTITY)'
and poco.status != 'R'
and poco.status != 'D')
and pboie.soo_type = 'ADD_CUST_CERT_REQ_TYPE'
and rownum = 1;
dbms_output.put_line(v_prov_ol_id);
update pc_bo_order_item_ext pboie
set pboie.status = 'R'
where pboie.prov_ol_id = 'v_prov_ol_id'
and rownum = 1;
dbms_output.put_line('修改pc_bo_order_item_ext成功');
delete from cep_download_msg cdm where cdm.c_trans_id = 'v_prov_ol_id';
dbms_output.put_line('删除cep_download_msg成功');
update pc_ol_customer_order poco
set poco.status = 'LR'
where poco.prov_ol_id = 'v_prov_ol_id';
dbms_output.put_line('更新pc_ol_customer_order成功');
commit;
if v_prov_ol_id is null then
dbms_output.put_line('成功');
end if;
EXCEPTION
WHEN NO_DATA_FOUND THEN
dbms_output.put_line('未找到数据');
end;
输出结果是
100201408250034182997
修改pc_bo_order_item_ext成功
删除cep_download_msg成功
更新pc_ol_customer_order成功
但是下面表的数据没有改变
求教育
