写存储过程不是很容易就能实现的吗

解决方案 »

  1.   

    SQL> desc t_day_month
     名称                                      空?      类型
     ----------------------------------------- -------- ----------------------------
     DDATE                                              DATE
     NMONTH                                             NUMBER(38)SQL> declare
      2  v_i integer;
      3  begin
      4  for v_i in 1..365 loop
      5  insert into t_day_month values(t_date('2003-01-01','yyyy-mm-dd') + v_i,(v_i+3)/7 + 1 );
      6  end loop;
      7  end;
      8  /
    insert into t_day_month values(t_date('2003-01-01','yyyy-mm-dd') + v_i,(v_i+3)/7 + 1 );
                                   *
    ERROR 位于第 5 行:
    ORA-06550: 第 5 行, 第 32 列:
    PLS-00201: 必须说明标识符 'T_DATE'
    ORA-06550: 第 5 行, 第 1 列:
    PL/SQL: SQL Statement ignored
    SQL> declare
      2  v_i integer;
      3  begin
      4  for v_i in 1..365 loop
      5  insert into t_day_month values(to_date('2003-01-01','yyyy-mm-dd') + v_i,(v_i+3)/7 + 1 );
      6  end loop;
      7  end;
      8  /PL/SQL 过程已成功完成。