我现在把sql2000的表导入到Oracle中了。原先有sql2000的id自增字段。我想设置为序列。怎么做?

解决方案 »

  1.   

    我用system登录。能够创建。可是用户wyuser也赋给了创建任何触发器的权限了
      

  2.   

    是不是wyuser用户没有查询那表的权限?
      

  3.   

    用SEQUENCE,你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限CREATE SEQUENCE emp_sequence
    INCREMENT BY 1 -- 每次加几个
    START WITH 1 -- 从1开始计数
    NOMAXVALUE -- 不设置最大值
    NOCYCLE -- 一直累加,不循环
    CACHE 10;
      

  4.   

    CREATE SEQUENCE emp_sequence
    INCREMENT BY 1 -- 每次加几个
    START WITH 1 -- 从1开始计数
    NOMAXVALUE -- 不设置最大值
    NOCYCLE -- 一直累加,不循环
    CACHE 10;CREATE   or   Replace   TRIGGER   TRGname  
    BEFORE   INSERT   ON   表1  
    REFERENCING   NEW   AS   NEW     --NEW  
    FOR   EACH   ROW  
    Begin  
    SELECT   emp_sequence.NEXTVAL  
    INTO   :NEW.id  
    FROM   DUAL;  
    End;  
    /