Oracle从1开始序列

时间:2013-03-15 17:43:05

标签: sql database oracle oracle10g

我正在使用Oracle 10g维护一个数据库,我希望有一个从1开始的序列,并且每增加一行就会增加1。

为了达到这个目的,我创建了以下语句:

CREATE SEQUENCE PATIENTS_SEQ START WITH 1 INCREMENT BY 1 NOMINVALUE NOCACHE NOCYCLE;

但是,在将第一个条目插入带有值的表(PATIENTS_SEQ.NEXTVAL)时,计数从2开始而不是1.如果我将序列修改为以0开头,那么我得到一个错误,即以值开头不能低于最小值。任何人都可以帮忙解决如何让我的计数从1开始正确启动?

1 个答案:

答案 0 :(得分:14)

只需将minvalue设置为0:

CREATE SEQUENCE PATIENTS_SEQ 
  START WITH 0 
  INCREMENT BY 1 
  MINVALUE 0 
  NOCACHE 
  NOCYCLE;