oracle存储过程和job调用问题

存储过程实现从A B C表中取数据a1 b1表中,job调用每5分钟执行一次。不小心将a1 b1表的数据truncate了,并commit。将存储过程、job脚本的路径修改了。重新执行存储过程和job却实现不了数据转换了。再把脚本放回原路径执行也不能实现数据转换,这该怎么解决?

通常像这种自动任务的脚本都需要记录日志,记录每次运行的状态情况,方便问题跟踪,有没有问题是过程脚本问题还是自动任务问题,查看日志一下子就可以定位。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-21
你直接在sqlplus里执行下这个存储过程试试,看看管不管用。管用的话就去看job部分的代码,如果job部分代码页没问题,那就是你放的新路径可能有权限问题。本回答被网友采纳
第2个回答  2012-03-20
没看懂。不过感觉你还是想办法恢复a1,b1吧

oracle存储过程和job调用问题
通常像这种自动任务的脚本都需要记录日志,记录每次运行的状态情况,方便问题跟踪,有没有问题是过程脚本问题还是自动任务问题,查看日志一下子就可以定位。

Oracle数据库job,调用存储过程,PLSQL工具执行后,没有报错,但是也没有任...
SQL> create table test_job (t1 date);表已创建。SQL> create or replace procedure test_jobproce as 2 3 begin 4 5 insert into test_job values(sysdate);6 7 end test_jobproce;8 \/ 过程已创建。SQL> declare test_job_really number;2 begin 3 dbms_job.submit(test_j...

ORACLE 中user_jobs调用 存储过程
在里边执行下边的,把下边这些放到job里:DECLARE on_flag NUMBER;out_reason VARCHAR2(4000);BEGIN -- Now call the stored program sp_create_table(on_flag,out_reason);-- Output the results :a0 := on_flag;:a1 := out_reason;EXCEPTION WHEN OTHERS THEN dbms_output.put_line(SubStr('...

oracle包调用出错ora-06550:第1行,第7列
1. 存储过程或函数中的代码逻辑错误,如语法错误、数据类型不匹配等。2. 在调用存储过程或函数时传递的参数不正确或缺失。3. 数据库连接问题,如权限不足或连接中断等。三、解决方案 针对ORA-06550错误,可以采取以下步骤进行排查和解决:1. 检查错误信息中提供的行号和列号,定位到具体的代码位置。2....

关于Oracle job调用存储过程
你的这个job不对,应该是下面这样。declare job1 number;begin dbms_job.submit(job1,'insertSysdate;',sysdate,'sysdate+1\/1440');COMMIT;end;\/

oracle存储过程,为什么创建的时候还要传参数?不是应该调用的时候传吗...
你理解是对的,存储过程在创建的时候是不需要输入参数的,只有在调用的时候才需要传递参数。首先,存储过程中你定义参数的时候没有指定输入输出,vsalary IN ,vsalary ,IN 或者OUT 输出参数。create or replace procedure p_employee(vsalary IN number,vsalary2 IN number)as...vsalary 和vsalary2即...

Oracle中存储过程相互调用问题
--存储过程调用 variable v_c1 REFCURSOR;exec pkg_return_table.p_return_table(:v_c1);print v_c1;--存储过程调用 variable v_c1 REFCURSOR;variable v_c2 REFCURSOR;exec pkg_return_table.p_return_table1(1,:v_c1,:v_c2);print v_c1;print v_c2;--函数调用 select pkg_return_table...

oracle存储过程调用另一个存储过程
调用方法不正确 调用时没有实参,你应该按照函数定义时参数的个数和类型给函数传递同样个数和类型的参数,这是最基本的啊 你定义的是个函数,是函数就要返回值,你得用一个函数返回值同样类型的变量去接收这个返回值

oracle存储过程时间调用
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(sysdate) + 1 + 2\/24');-- 每周一凌晨2点执行 周一是每周的第二天next_day(sysdate,2)同理周二是第三天,next_day(sysdate,3)dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(next_day(sysdate,2))+2\/24');-- 每月...

是不是一个JOB只能定时执行一个存储过程
定时执行存储过程,需要在job里定义;而执行多个存储过程,则在job中定义多次即可。运行环境:oracle 10g 1、定义其中一个job 1 2 3 4 5 6 7 8 9 10 11 12 13 declare jobno number;begin dbms_job.submit(11,what => 'pro_bdc_bh(to_char(add_months(trunc(sysdate),-1),''yyyy'...

相似回答