请教一个简单的过程有一个表t 有一个字段num1   我要把num1设置从1-100的随机 数,用过程怎么实现

解决方案 »

  1.   

    如果只是想构造表的话,没必要用过程吧。
    insert into t values (TRUNC(DBMS_RANDOM.value(0,100)));
      

  2.   

    insert into t values (TRUNC(DBMS_RANDOM.value(1,100)));
      

  3.   

    declare
      v_insert_num number(18,0);  -- 你想插入记录的条数
    begin
      v_insert_num = 100; -- 比如:插入100条记录行
      for i in 1 .. v_insert_num
        insert into t(num1) select trunc(dbms_random.value(1,101)) from dual;
      end loop;
    end;
    /
      

  4.   

    create table t(
      num1 number(18,0)
    );declare
      v_insert_num number(18,0);  -- 你想插入记录的条数
      v_rand_num number(18,0);
    begin
      v_insert_num := 100; -- 比如:插入100条记录行
      for i in 1 .. v_insert_num loop
        select trunc(dbms_random.value(1,101)) into v_rand_num from dual;
        insert into t (num1) values(v_rand_num);
      end loop;
      commit; -- 提交一下
    end;
    /
      

  5.   


    declare
      cursor c_ur is select rownum from t;
      v_rownum number(18,0);
      v_num1 t.num1%type;
    begin
      for r_ur in c_ur loop
        select trunc(dbms_random.value(1,101)) into v_num1 from dual; -- 将要更新的数值
        v_rownum := r_ur.rownum;
        update t set num1 = v_num1 where rownum = v_rownum;
      end loop;
      commit;
    end;
    /
      

  6.   

    declare
      v_insert_num number(18,0);  -- begin
      v_insert_num := 100; -- //更新一百条
      for i in 1 .. v_insert_num loop
        update plugs_mat set num1= select trunc(dbms_random.value(1,101)) from dual
        where stauts = 200;
      end loop;
    commit
    end;用了4楼兄弟 的,不知道为什么报错
      

  7.   

    这个看不懂什么意思   rownum 这个有什么用,为什么用它来做过滤条件我的更新条件是status = 200
      

  8.   

    update plugs_mat set num1= trunc(dbms_random.value(1,101))
    where stauts = 200;