在oracle中很少这么用,一定要用的话,可以用trigger或在insert procedure中加控制,是否一定要用sequence取决于你的应用。
如果你把问题讲的详细一点,可能更方便讨论

解决方案 »

  1.   

    多谢KingSunSha,我说的问题是在该表中要有primary key,这样在删除时有唯一标记,现在可以使用行标志,即rowid,在一个表中该rowid是唯一的,其他解决办法耗资源。
      

  2.   

    SQL Server,Sybase:
    有個identity屬性可以讓系統自動增1
    create table a
    (
    a1 int identity(1,1),
    a2 varchar(6)
    )
    然後在insert時:
    insert into a values('hello!'); --不用管a1,系統會幫你自動增1Oracle:
    使用SEQUENCE(序列)可以達到你的要求
    create table a
    (
    a1 int ,
    a2 varchar2(6)
    );create SEQUENCE seq_a  INCREMENT BY 1;然後在insert時:
    insert into a values(seq_a.nextval,'hello!'); --seq_a.nextval是該序列的下個值