oracle觸發器產生單據號

2021-06-26 23:00:34 字數 760 閱讀 3933

create or replace trigger trg_kc_sprk_i

before insert on kc_sprk

for each row

declare

vscbh varchar2(40);

icount number;

ifor number;

begin

select t.bhqz into vscbh  from xt_djbhgz  t where t.gzid=8;

--這裡是獲取另一張表的某乙個字段作為字首,或者直接賦值也行:  vscbh := 『gxcb_』

select count(1)+1 into icount from kc_sprk j where j.xzsj>=trunc(sysdate,'mm');

--這裡是獲取本張表的總數 + 1,並賦值給icount

vscbh:=vscbh||to_char(sysdate,'yyyymm');

--這裡是字首+時間年月

for ifor in 1..5-length(icount) loop

vscbh:=vscbh||'0';

end loop;

:new.rk_djh:=vscbh||icount;

end trg_kc_sprk_i;

效果:gxcb_20141100001              gxcb_20141100002                             gxcb_20141100003

ORACLE觸發器 行級觸發器

行級觸發器 本章介紹行級觸發器機制。大部分例子以insert出發器給出,行級觸發器可從insert update delete語句觸發。1 介紹 觸發器是儲存在資料庫已編譯的儲存過程,使用的語言是pl sql,用編寫儲存過程一樣的方式編寫和編譯觸發器。下面在sql plus會話中建立和示例乙個簡單的...

Oracle觸發器介紹 行級觸發器

行級觸發器 本章介紹行級觸發器機制。大部分例子以insert出發器給出,行級觸發器可從insert update delete語句觸發。1 介紹 觸 髮器是儲存在資料庫已編譯的儲存過程,使用的語言是pl sql,用編寫儲存過程一樣的方式編寫和編譯觸發器。下面在sql plus會話中建立和示例一 個簡...

Oracle觸發器簡介 建立 使用觸發器

觸發器類似與儲存過程,都是為了實現特殊功能而執行的 塊。觸發器不允許使用者顯示傳遞引數,不能夠返回引數值,不允許使用者呼叫觸發器。觸發器只是在oracle合適的時間自動呼叫,非常類似於面向程式設計中的 觸發器按照觸發事件型別 物件不同分為 語句觸發器,行觸發器,instead of觸發器,系統事件觸...