假设有books表
表的技俩以下
Name
Type
Nullable
Default Comments
----------- ------------ -------- -------
--------
BOOKID
VARCHAR2(20)
BOOKNAME
VARCHAR2(20) Y
PUBLISHERID VARCHAR2(20) Y
BOOKIMGSRC VARCHAR2(20) Y
PRICE
NUMBER
Y
WRITERID
VARCHAR2(20) Y
WEARHOUSEID VARCHAR2(20) Y
需求: 设置此表的主键为自删 主键的技俩为上架日期减编号
先创立序列产死编号
----创立序列
create sequence seq_bookid
minvalue 1000000---设置最小值1000000
maxvalue 9999999---设置最年夜值9999999
start with 1000000----从100000开初
increment by 1----每次减1
nocycle----一向累减没有予循环
nocache;---没有设缓冲区
创立触发器 实现功能
-----创立触发器 每插进一条数据则主键自动删减
技俩为上架日期减seq_bookid中与得的值
create or replace trigger tri_bookid
before insert on books
for each row
begin
select to_char(sysdate,"yyyymmdd")||seq_bookid.nextval into
:new.bookid from dual;
end;
/
<!-- 正文结束 -->
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22272235/viewspace-1116493/
,如需转载,请注明出处,否则将追究法律责任。