我们已经在数据库中有一个序列,现在我必须修改该序列,以便从一个特定的值开始,我将从db中获取。我写了以下代码
DECLARE
i_Seq INTEGER;
BEGIN
SELECT MAX (col_id) + 1 INTO i_Seq from Table;
EXECUTE IMMEDIATE 'CREATE SEQUENCE SEQHDR MINVALUE '|i_Seq|' MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH '|i_Seq|' CACHE 20 NOORDER NOCYCLE'
END;
/
我有以下问题。
答案 0 :(得分:7)
是的,如果序列已存在,则需要删除序列。没有CREATE OR REPLACE SEQUENCE选项。
是的,您正在使用START WITH子句。由于序列被声明为NOCYCLE,因此无需指定MINVALUE。