2
我們已經在數據庫中有一個序列,現在我必須修改該序列,以便從一個特定值開始,我將從數據庫中獲取該值。我寫了以下代碼關於Oracle序列的問題
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;
/
我有以下問題。
- 我必須首先刪除舊序列,否則oracle會自行完成它?
- 該開始於子句序列創建。我使用它嗎?或者我可以用任何數字替換它?
刪除序列將導致依賴對象無效請參閱:http://stackoverflow.com/questions/7486917/reset-auto-increment-sequence-pl-sql解決方案,可以改變序列而不會丟失。 –