ORACLE的存储过程可以执行成功 可是表中的数据没有发生变化
create or replace procedure pro_op_m_test
as
tab1 dw2.dw2_etl_com@bi52%rowtype;
tab2 dw2.dw2_etl_com@bi52%rowtype;
tab3 dw2.dw2_etl_com@bi52%rowtype;
tab4 Itf2.Inter_Cfg@bi52%rowtype;
tab5 ST.BI_JOB_LIST@FJBIJS_ST%rowtype;
tab op_m_test1%rowtype;
begin
select * into tab1
from dw2.dw2_etl_com@bi52 t where t.tablename='DW_SRV_4GCUUSER_DT';
select * into tab2
from dw2.dw2_etl_com@bi52 t where t.tablename='DW_IS_MVUSER_DI';
select * into tab3
from dw2.dw2_etl_com@bi52 t where t.tablename='DW_IS_ALUSER_DI';
select * into tab4
from Itf2.Inter_Cfg@bi52 T WHERE T.TABLENAME='ODS_2IMSG_MSGJH';
select * into tab5
from ST.BI_JOB_LIST@FJBIJS_ST T WHERE T.ITFDATE='20170911' AND SRCTABLEname='CELL_INFO';
if tab1.optime=to_char(sysdate,'yyyymmdd')-1 and tab1.status!=0 then
update op_m_test1 set stop_time=tab1.stoptime,
datafile_day=tab1.optime,
status=tab1.status,
status_name=(case tab1.status
when 0 then 'zz成功'
when 1 then '正在抽取'
when -1 then '执行失败'
end)
where table_name='DW_SRV_4GCUUSER_DT';
end if;
if sql%found then
DBMS_OUTPUT.PUT_LINE('this is successful!');
end if;
end pro_op_m_test;
as
tab1 dw2.dw2_etl_com@bi52%rowtype;
tab2 dw2.dw2_etl_com@bi52%rowtype;
tab3 dw2.dw2_etl_com@bi52%rowtype;
tab4 Itf2.Inter_Cfg@bi52%rowtype;
tab5 ST.BI_JOB_LIST@FJBIJS_ST%rowtype;
tab op_m_test1%rowtype;
begin
select * into tab1
from dw2.dw2_etl_com@bi52 t where t.tablename='DW_SRV_4GCUUSER_DT';
select * into tab2
from dw2.dw2_etl_com@bi52 t where t.tablename='DW_IS_MVUSER_DI';
select * into tab3
from dw2.dw2_etl_com@bi52 t where t.tablename='DW_IS_ALUSER_DI';
select * into tab4
from Itf2.Inter_Cfg@bi52 T WHERE T.TABLENAME='ODS_2IMSG_MSGJH';
select * into tab5
from ST.BI_JOB_LIST@FJBIJS_ST T WHERE T.ITFDATE='20170911' AND SRCTABLEname='CELL_INFO';
if tab1.optime=to_char(sysdate,'yyyymmdd')-1 and tab1.status!=0 then
update op_m_test1 set stop_time=tab1.stoptime,
datafile_day=tab1.optime,
status=tab1.status,
status_name=(case tab1.status
when 0 then 'zz成功'
when 1 then '正在抽取'
when -1 then '执行失败'
end)
where table_name='DW_SRV_4GCUUSER_DT';
end if;
if sql%found then
DBMS_OUTPUT.PUT_LINE('this is successful!');
end if;
end pro_op_m_test;
...全文
相关推荐
Oracle定时执行存储过程
定时执行存储过程可以让 oracle 自动执行某些操作,而不需要人工干预。下面我们将详细讲解 oracle 中的定时执行存储过程。
Oracle执行存储过程权限不足
然而,当遇到"Oracle执行存储过程权限不足"的问题时,通常是因为用户在执行存储过程中没有足够的权限来完成其中涉及到的操作,如创建(CREATE)或删除(DROP)表等。
使用PLSQL_Developer导出Oracle表及数据
### 使用PL/SQL Developer导出Oracle表及数据详解#### 一、导出表及存储过程等对象在日常工作中,经常会遇到需要备份或者迁移Oracle数据库中的表结构、存储过程等对象的情况。
Oracle存储过程及调用
Oracle存储过程是数据库管理系统中的一种重要特性,它允许开发者封装一系列的SQL语句和PL/SQL代码,以实现更复杂的业务逻辑。
oracle存储过程,批量创建表和数据
oracle存储过程,批量创建表和数据,表的个数支持参数传入


