很多時候,我們都會用到oracle序列,那麼我們怎麼修改序列的當前值呢?
首先我們可以檢視當前序列值是多少,如下:
select 序列名.nextval from dual;
比方說我現在查出來值是10,那麼我要把當前值改成8,那麼可以這麼改:
alter sequence 序列名 increment by -2;
如果我需要把當前值改成15,那麼可以這麼改:
alter sequence 序列名 increment by 5;
上述是通過修改當前序列增量長度間隔值,用於修改當前序列值,增加1或-1或n或-n,當修改好當前值之後,記得一定要把序列增量改回來,改為1:
alter sequence 序列名 increment by 1;
用Oracle序列當主鍵
專案裡很多報表都沒有建主鍵,但是頁面做更新或者刪除需要用到。可以用下面的方法實現 先建好序列 create sequence cswarn seq increment by 1 每次加幾個 start with 1 從1開始計數 nomaxvalue 不設定最大值 nocycle 一直累加,不迴圈 ...
Oracle 修改序列的當前值的3種方式
當我們將資料匯入到表中後,為了避免後續資料插入失敗,一般情況下,會更改此表使用的序列的開始值。如何修改?使用n icat的話,是無法對序列的當前值,進行修改的。方式一 使用plsql 開啟plsql,找到sequences 方式二 重建序列 錯誤方式 具體步驟是 刪除原來的序列,重新建立。刪除序列 ...
儲存過程 修改當前序列值
在oracle中,序列 sequence 是可以產生一組等間隔的數值的一種生成器。常用來生成表的主鍵或者其他有規律或自增 減的字段值。當前專案是用來生成表的主鍵,由於某些原因,當前的某些序列值小於了對應表的id值,導致繼續使用序列生成id,會造成id重複。所以需要修改當前的序列值,使其大於對應表id...