这是加一分钟的方法:sysdate+1/60/24。十万次循环自己做吧

解决方案 »

  1.   

    create table a (
      i int,
      d date
    )insert into a (i,d) values (1,to_date('1900-1-1','yyyy-mm-dd'));
    insert into a (i,d) values (2,to_date('1900-1-1','yyyy-mm-dd')+1/1440);
    insert into a (i,d) values (3,to_date('1900-1-1','yyyy-mm-dd')+2/1440);
      

  2.   

    select 
      to_date('1999-01-01 12:00:00','yyyy-mm-dd hh24:mi:ss')+1/(24*60)+rownum 
    from dba_tab_cols
      

  3.   

    select to_char(sysdate+rownum/60/24,'yyyy-mm-dd hh24:mi') from all_tab_columns,all_tab_columns where rownum<100001;
      

  4.   

    select to_char(to_date('1999-01-01 12:00','yyyy-mm-dd hh24:mi')+rownum/60/24,'yyyy-mm-dd hh24:mi') from all_tab_columns,all_tab_columns where rownum<100001;
      

  5.   

    16:24:14 SQL> create table t1(a int,b date);表已创建。已用时间:  00: 00: 00.16
    16:24:22 SQL> create or replace procedure test(tab_name varchar2,tab_col varchar
    2,tab_count number,tab_start varchar2) as
    16:24:23   2  v_sql varchar(100);
    16:24:23   3  begin
    16:24:23   4    for i in 1 .. tab_count loop
    16:24:23   5       v_sql:='insert into '||tab_name||'('||tab_col||') values ('||
    'to_date('''||tab_start||''',''yyyymmdd hh24:mi:ss'')+('||i||'-1)/1440)';
    16:24:23   6       execute immediate v_sql;
    16:24:23   7    end loop;
    16:24:23   8  end;
    16:24:23   9  /过程已创建。已用时间:  00: 00: 00.31
    16:24:24 SQL> exec test('T1','B',10,'20040101 12:00:00');PL/SQL 过程已成功完成。已用时间:  00: 00: 00.16
    16:24:43 SQL> select * from t1;         A B
    ---------- -----------------
               20040101 12:00:00
               20040101 12:01:00
               20040101 12:02:00
               20040101 12:03:00
               20040101 12:04:00
               20040101 12:05:00
               20040101 12:06:00
               20040101 12:07:00
               20040101 12:08:00
               20040101 12:09:00已选择10行。已用时间:  00: 00: 00.31
      

  6.   

    谢谢各位的大力支持:
    Samland(samland) 、hippie1024(痞子)方法简单,好用;
    CodeMagic(ErrorDetector) 方法也不错,不过好像是个死循环;
    ORARichard(没钱的日子好难过啊)好负责啊,谢谢;
    zmgowin(隐者(龙祖宗)) 最热心,自从给ORACLK干上以来,我看了你的好多帖子,都不错;
    还有别的方法尽管拿出来,谢谢大家的热心回复!
      

  7.   

    最终我想采用Samland(samland)提供的方法,比较简单,当然其他的方法也非常好,思路都很开阔,可以从另外一个角度来考虑问题!
      

  8.   

    Samland(samland)提供的方法有问题啊,请看下列数据:没隔3分钟加一次,
    01-一月 -2002 12:42:00 PM
    01-一月 -2002 12:45:00 PM
    01-一月 -2002 12:48:00 PM
    01-一月 -2002 12:57:00 PM
    01-一月 -2002 01:00:00 PM
    01-一月 -2002 01:03:00 PM
    12:57:00的时候回到了01:00:00,而且日期没有增加!
      

  9.   

    把给你的语句直接放到SQL PLUS中去运行一下
      

  10.   

    这是我的代码,我是在SQL/PLUS种运行的
    declare 
    var_ruler number; 
    begin
      for i in 1..100 loop
        select dbms_random.value(0,6) into var_ruler from dual;
        insert into buliao(id,ruler,daytime) values(i,var_ruler,to_date('2002-01-01 12:00:00','yyyy-mm-dd hh24:mi:ss')+(i*3)/1440);
      end loop;
      commit;
    end;
      

  11.   

    ---(i*3)/1440);你为什么要i*3呢,直接用i/1440就好了啊
      

  12.   

    不好意思,正你所说的,结果是对的,但是呢,我是用PL/SQL查询的。
    用控制台直接将表打开,感觉里面的时间有点乱七八糟的,时间不是以24小时的格式显示的。
    如:
    06-七月 -2004 11:57:00 AM
    06-七月 -2004 12:00:00 PM
    06-七月 -2004 12:03:00 PM
    请问怎么将表中的时间格式改为24小时进制呢?
      

  13.   

    to_char(daytime,'dd-mon-yy hh24:mi:ss')
      

  14.   

    用to_char(daytime,'dd-mon-yy hh24:mi:ss')来显示,好像有错类。请给出您的具体代码好吗,谢谢
      

  15.   

    select to_char(sysdate,'dd-mon-yy hh24:mi:ss') from dual;