update table set 行号=rownum;

解决方案 »

  1.   

    嗯,很对
    也可以
    create sequence s;
    update a set 行号=s.nextval;这样如果单号中含有B等别的记录
    就可update a set 行号=s.nextval where 单号='A';
      

  2.   

    使用rownum会出现问题,如果你的更新或增加操作每次重新开始,插入的值就会又从1开始了,即会有重复值,所以不推荐使用rownum这种方式。
    推荐使用创建sequence这种方式,只要你是使用这一个sequence,就不会出现重复的值。
      

  3.   

    呵呵,嗯,用sequence比较好:)
      

  4.   

    都可以,sequence用的比较多,但在某些场合下rownum会有特殊的作用
      

  5.   

    不是都可以,如果你做一次更新,以后不增加了,那时都可以,但是如果你以后还要增加,这样rownum就会出现重复地值,所以推荐使用sequence。
    不果在sequence的时候要注意,你想要这个号连续,这个seq只能这一个程序使用,另,在使用这个seq的时候,服务器不能突然down掉,否则,号码也是不连续,但绝对不会重复,这一点有保障!