小编Tun*_*nde的帖子

如何使用DBMS_SCHEDULER.CREATE_JOB过程执行过程

我想创建一个在给定日期删除数据库对象的作业.创建的作业可以,但不执行该过程.尝试单独执行该程序,它的工作原理.

这是创建作业的代码

v_jobnam := v_objnam; 
                v_jobnam := DBMS_SCHEDULER.generate_job_name (v_jobnam);  

 v_startdate := to_timestamp(v_startdate); 
     select sysdate + (v_delhrs/1440) 
        into v_startdate
        from dual;

 DBMS_SCHEDULER.CREATE_JOB(job_name => v_jobnam, job_type => 'PLSQL_BLOCK', JOB_ACTION => 'BEGIN DROP_OBJ1(' || v_objnam|| ', ' || v_objtyp || ', '|| v_schema || ',' || v_objid ||'); END;', start_date => SYSTIMESTAMP, repeat_interval => 'freq=secondly; bysecond=0', end_date => NULL, enabled => TRUE, comments => 'Calls PLSQL once');
Run Code Online (Sandbox Code Playgroud)

其中v_delhrs是一个数字.这是程序的代码:

  PROCEDURE DROP_OBJ1
    (
        p_objnam       IN   CHAR,
        p_objtyp       IN   CHAR,
        p_copyto       IN   ALL_OBJECTS.OWNER%TYPE,
        p_objid        IN   NUMBER …
Run Code Online (Sandbox Code Playgroud)

oracle oracle10g dbms-scheduler

2
推荐指数
1
解决办法
4万
查看次数

ORA-06502:PL/SQL:数字或值错误:使用Oracle聚合函数时字符串缓冲区太小

美好的一天大师,

我有一个脚本定期填充表崩溃并给出上述错误.奇怪的是,它已经在生产系统上运行了近3个月,没有任何问题,上周突然崩溃了.据我所知,这些表格没有任何变化.

有没有人遇到过这样的事情?我相信它与我在其中实现的聚合函数有关; 但它最初起作用了.

请; 请将我开发的脚本部分附加到我认为给出错误的过程中.

创建或替换程序V1

- 宣布

    v_a       VARCHAR2(4000);
    v_b       VARCHAR2(4000);
    v_c       VARCHAR2(4000);
    v_d       VARCHAR2(4000);
    v_e       VARCHAR2(4000);
    v_f       VARCHAR2(4000);
    v_g       VARCHAR2(4000);
    v_h       VARCHAR2(4000);
    v_i       VARCHAR2(4000);
    v_j       VARCHAR2(4000);
    v_k       VARCHAR2(4000);
    v_l       VARCHAR2(4000);
    v_m       VARCHAR2(4000);
    v_n       NUMBER(10);
    v_o       VARCHAR2(4000);
Run Code Online (Sandbox Code Playgroud)

-
- 填充DEMO表的过程

        BEGIN

              -- Delete all from the DEMO table
              DELETE FROM DEMO;

              -- Populate fields in DEMO from DEMOV1
              INSERT INTO DEMO(ID, D_ID, CTR_ID, C_ID, DT_NAM, TP, BYR, ENY,
                               ONG, SUMM, DTW, REV, LD, MD, STAT, CRD)
              SELECT ID, …
Run Code Online (Sandbox Code Playgroud)

oracle plsql aggregate-functions

0
推荐指数
1
解决办法
7848
查看次数