Oracle从1开始序列

rap*_*yen 4 sql database oracle oracle10g

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

为了实现这个目的,我创建了以下语句:

CREATE SEQUENCE PATIENTS_SEQ START WITH 1 INCREMENT BY 1 NOMINVALUE NOCACHE NOCYCLE;
Run Code Online (Sandbox Code Playgroud)

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

a_h*_*ame 14

只需将minvalue设置为0:

CREATE SEQUENCE PATIENTS_SEQ 
  START WITH 0 
  INCREMENT BY 1 
  MINVALUE 0 
  NOCACHE 
  NOCYCLE;
Run Code Online (Sandbox Code Playgroud)