求大神解惑,oracle使用触发器报错,

求大神解惑,oracle使用触发器,在插入的表中无数据时,报错(如下图),再执行就成功了,可是序列从2开始了,我想问下如何让它从1开始不报错
下面是触发器:
create or REPLACE trigger trigger_name
BEFORE insert on test
for each row
DECLARE
v_newVal NUMBER(12) := 0;
BEGIN
if(INSERTING AND :new.DEVICEBRAND_SK IS NULL) then
select sequence_p .nextval into v_newVal from DUAL;

 if v_newVal = 1 THEN
   SELECT NVL(max(devicebrand_sk),0) INTO v_newVal FROM test;
   v_newVal := v_newVal + 1;
   end IF ;
 :new.devicebrand_sk := v_newVal;

end if;
end;
下面是序列:
create sequence sequence_p minvalue 1 maxvalue 999999999999999999999999 start with 1 increment by 1 cache 20;

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问