解决方案 »

  1.   

    sp_update_ycz 存储过程需要参数吗?
      

  2.   

    declare
    job number;
    begin
      sys.dbms_job.submit(job => job,
                          what => 'dbms_refresh.refresh(''"U_MOBILE_DB"."MV_BASE_FENXI"'');',
                          next_date => to_date('02-02-2015 23:00:00', 'dd-mm-yyyy hh24:mi:ss'),
                          interval => 'trunc(SYSDATE + 1) - 1/24');
      commit;
    dbms_output.put_line(to_char(job));
    end;
      

  3.   

    有一个变量,该存储过程的语句如下:CREATE OR REPLACE PROCEDURE sp_update_ycz
    AS
      last_date DATE;
    BEGIN
      SELECT MAX(max_date) INTO last_date FROM record_ycz;
      DELETE FROM p_ycz_all WHERE createtime = last_date;
      INSERT INTO p_ycz_all
      SELECT * FROM ycz@dblinkto_u_dsjycz_db WHERE createtime >= last_date;
      COMMIT;
      INSERT INTO record_ycz
      SELECT SYSDATE,MAX(createtime),COUNT(*),COUNT(DISTINCT mobile),COUNT(user_NAME),COUNT(cardno)
        FROM p_ycz_all;
      COMMIT;
    END
      

  4.   

    declare一个number job但是没有赋值啊,这样的语法都可以吗?
      

  5.   

    可以啊,固定这样子。
    declare  
    job number;
    begin
    sys.dbms_job.submit
    (job,
    'sp_update_ycz;',
    to_date('2015-02-02 00:00:00',' yyyy-mm-dd hh24:mi:ss'),
    'trunc(sysdate+1)'
    );
    commit;
    end;
      

  6.   

    job => job
    这里赋值了,不定义变量就会报错了
      

  7.   


    job => :job
    加了冒号代表给job赋值了一个字符型吧,
    job实际上是一个数值型的吧,而且还是系统给定的,
      

  8.   

    :表示绑定变量,在sqlplus里用variable来定义,也是需要声明变量的