用PL SQL的Data Generator定义日期型字段的值如何做?
我想生成某个时间段内的数据:
2000-01-01 01:00:00
2010-12-01 01:00:00
用random吗?怎么用?

解决方案 »

  1.   

    7.在2010年7月1日---2011年3月8日之间,任取一个随机值;SELECT TO_DATE(TRUNC(DBMS_RANDOM.VALUE(TO_NUMBER(TO_CHAR(to_date('20100701010101','yyyy-mm-dd hh24:mi:ss'), 'J')),
                                           TO_NUMBER(TO_CHAR(to_date('20110308010101','yyyy-mm-dd hh24:mi:ss'), 'J')))),
                   'J')
      FROM DUAL;本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zftang/archive/2011/03/08/6232931.aspx
      

  2.   

    加入你这个表有2个字段,ID,还有你要的这个随机时间,,
    你先把ID值都插进去,然后进行select id,TO_DATE(TRUNC(DBMS_RANDOM.VALUE(TO_NUMBER(TO_CHAR(to_date('20000101010000','yyyy-mm-dd hh24:mi:ss'), 'J')),
      TO_NUMBER(TO_CHAR(to_date('20101201010000','yyyy-mm-dd hh24:mi:ss'), 'J')))),
      'J')
    from biao 
    这样所有的数据就都出来了。这就是你想要的结果,,结贴把。。
      

  3.   

    不好意思,可能是我说的不明白,我是说用PL.SQL.Developer工具来对某张物理表生成测试数据,用tools菜单中的data generator
      

  4.   

    在plsqldev里的数据生成器里头,选择你要的表对应的日期列,
    在函数一栏里头,填:
    TO_DATE(TRUNC(DBMS_RANDOM.VALUE(TO_NUMBER(TO_CHAR(to_date('20000101010101','yyyy-mm-dd hh24:mi:ss'), 'J')),  TO_NUMBER(TO_CHAR(to_date('20121201010101','yyyy-mm-dd hh24:mi:ss'), 'J')))), 'J')
    其它列你自己随意,然后:
    ”创建数据为SQL",去掉每行末尾里头的?
    把那些SQL语句存成一个文件,执行即可。
    plsqldev这里头似乎有一个bug,产生了多余的?
      

  5.   

    算了,看楼主可怜,公布一下,不要那么麻烦,很简单的
    第一步:选择Data Generator->options->Date format 输入 yyyy-mm-dd
    第二步:选择Definition->选择日期字段->在Data Editor中输入
            Random(2006-01-01, 2012-01-01) 即产生2006-01-01到2012-01-01的随机日期