用Oracle序列當主鍵

2021-07-03 21:28:22 字數 639 閱讀 5282

專案裡很多報表都沒有建主鍵,但是頁面做更新或者刪除需要用到。可以用下面的方法實現

--先建好序列

create sequence cswarn_seq

increment by 1   -- 每次加幾個  

start with 1     -- 從1開始計數  

nomaxvalue       -- 不設定最大值  

nocycle          -- 一直累加,不迴圈  

cache 10; 

--需要用到序列的表

create table test_a(

aid varchar2(10),

btext varchar2(20)

);--資料來源表

create table test_b(

text varchar2(20)

);--先往b表插幾條記錄

select t.*,rowid from test_b t;

--執行以下語句

insert into test_a

select cswarn_seq.nextval,text from test_b;

--序列生成的id已經插入表中

select t.*,rowid from test_a t

oracle修改序列當前值

很多時候,我們都會用到oracle序列,那麼我們怎麼修改序列的當前值呢?首先我們可以檢視當前序列值是多少,如下 select 序列名.nextval from dual 比方說我現在查出來值是10,那麼我要把當前值改成8,那麼可以這麼改 alter sequence 序列名 increment by...

oracle 建立表 序列 注釋 主鍵

declare icount number 2 0 begin select count into icount from user sequences u where u.sequence name seq tcapitalnotify if icount 0 then 建立序列 execute ...

oracle 建立表 序列 注釋 主鍵

declare icount number 2 0 begin select count into icount from user sequences u where u.sequence name seq tcapitalnotify if icount 0 then 建立序列 execute ...