DROP TABLE tbl_Department;
 CREATE TABLE tbl_Department (
iDeptCode NUMBER(3)  PRIMARY KEY,
sDepartment VARCHAR2(30), 
sReMark  VARCHAR2(200)
 );
 DROP SEQUENCE Seq_iDeptCode;
 CREATE SEQUENCE Seq_iDeptCode START WITH 1 INCREMENT BY 1
 MAXVALUE 999 NOCACHE ORDER ;Insert Into tbl_Department (iDeptCode,sDepartment,sReMark )
value(Seq_iDeptCode.nextval,'软件部','测试');

解决方案 »

  1.   

    能不能数据中直接设.
    我用的ODBC
    用来操作几种数据库
    已经可以处理,sql,access,现在只有oracle有一点小问题
      

  2.   

    可以吧在sql/plus中这行Samland的生成序列的语句CREATE SEQUENCE Seq_iDeptCode START WITH 1 INCREMENT BY 1
     MAXVALUE 999 NOCACHE ORDER ;在插入表记录的时候从序列中取值就行了。
      

  3.   

    你在oracle中建个序列“方案——》序列——》用户名——》新建”(设为自增,假设序列名字为idauto)
    然后在程序中insert语句写“insert into xxx set(id,....) values(idauto.nextVAL,....)”
      

  4.   

    我明白你的意思,在access和sql server中当插入一条新的数据时,系统自动对自增列进行设置,但是oracle没有哪个功能,只能通过设置SEQUENCE 然后用你所创建SEQUENCE的名称.nextval取到他的下一个数值,然后再insert进去
      

  5.   

    CREATE SEQUENCE USERID INCREMENT BY 1 START WITH 1 
        MAXVALUE 1.0E28 MINVALUE 1 NOCYCLE 
        NOCACHE NOORDER;CREATE OR REPLACE TRIGGER USERADD
    BEFORE INSERT ON MEMBERRG
    FOR EACH ROW
    BEGIN
        SELECT USERID.NEXTVAL INTO :NEW.NUM FROM DUAL;
    END;
      

  6.   

    在ORACLE里没有象SQL SERVER里那样直接设的,
    用序列可以实现相同的功能。