給oracle表格添加主鍵


 

注意:

PLM_SPAREPARTS_DESDOC_RELATION為數據庫表名
TASKID 為新加了一個字段
SEQ_PLM_SPA_DES_RELA_TASKID 為序列名
trg_PLM_SPA_DESDOC_RELATION為觸發器名


 1 --第0步
 2 alter table PLM_SPAREPARTS_DESDOC_RELATION add TASKID number
 3 
 4 --第1步
 5 create sequence SEQ_PLM_SPA_DES_RELA_TASKID INCREMENT BY 1 START WITH 1 NOMAXVALUE NOCYCLE
 6 
 7 
 8 --第2步
 9 create or replace trigger trg_PLM_SPA_DESDOC_RELATION
10   before insert
11   on PLM_SPAREPARTS_DESDOC_RELATION
12   for each row
13 declare
14 
15  nextid number;
16 begin
17   IF :new.TASKID IS NULL then
18       select PLMDEV.SEQ_PLM_SPA_DES_RELA_TASKID.NEXTVAL
19       into nextid  from dual;
20       :new.TASKID:=nextid;
21   end IF;
22 
23 
24 end trg_PLM_SPA_DESDOC_RELATION;
25 
26 --第3步
27 update PLM_SPAREPARTS_DESDOC_RELATION set PLM_SPAREPARTS_DESDOC_RELATION.TASKID = plmdev.SEQ_PLM_SPA_DES_RELA_TASKID.nextval;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM