如果你不想删除的话  就
alter sequence 你的序列名
increment by -50;
然后 select 序列名.nextval from dual;一次,再alter sequence 你的序列名
increment by 改回你原来的递增值我想还是删除比较方便,呵呵~~

解决方案 »

  1.   

    alter 虽然比 drop 麻烦 
    但这样不会导致相关的 trigger ,procedure 等失效
      

  2.   

    To: l2g32003(T2-X) drop sequence 
    不会导致相关的 trigger ,procedure 失效To:楼主
    reset sequence 可以这么做,当然删除重建也可,同名就行。ALTER SEQUENCE seq_test INCREMENT BY -3 MINVALUE 0
    SELECT seq_test.NEXTVAL FROM DUAL
    ALTER SEQUENCE seq_test INCREMENT BY 1 MINVALUE 0
      

  3.   

    对了,我的表明下怎么自动建了一个序列,一般在什么情况下系统自动建一个序列呢???另外还自动建了一个表,不知道怎么回事呢??就是下面的前面两个对象
    SQL> select * from cat;TABLE_NAME                     TABLE_TYPE
    ------------------------------ -----------
    MICROSOFTDTPROPERTIES          TABLE
    MICROSOFTSEQDTPROPERTIES       SEQUENCE
    ODS_SERV_TYPE                  TABLE
    TEST2                          SYNONYM
    TEST4                          TABLE
    TEST5                          TABLE
      

  4.   

    当删除了sequence 后又重建了你 可以看一下 user_objects 的 STATUS 列 显示的是 invaild  这表示存储过程或trigger无效了  但是你再调用存储过程或trigger时系统会自动
    重新编译一下存储过程或trigger很奇怪我这csdn一改 我以前的回复怎么没了