【文件属性】:
文件名称:Oracle 使用触发器创建自动序列号
文件大小:764B
文件格式:SQL
更新时间:2015-01-06 17:20:46
Oracle 使用触发器创建自动序列号
--建表
drop table TEST
create table TEST
(
NID varchar2(20) PRIMARY KEY,
test1 varchar2(20)
)
--序列drop sequence SEQ_TEST
create sequence SEQ_TEST
minvalue 1--最小值
nomaxvalue--不设置最大值
increment by 1--每次加1个
start with 1--从1开始计数,nocycle是一直累加,不循环
cache 20
order;
--查序列,小心执行
select seq_customer_id.nextval from SEQ_TEST
--插入数据
insert into test(nid,test1) values(seq_test.nextVal,'test1');
--创建触发器
CREATE OR REPLACE TRIGGER tg_test
BEFORE INSERT ON test FOR EACH ROW WHEN (new.nid is null)
begin
select seq_test.nextval into:new.nid from dual;
end;
--测试 insert条语句将会自动生成自定义主键,即插入其他字段,主键在插入记录前自动生成
insert into test(test1) values('bbb');
select * from test;
网友评论
- 还行 可惜不是我要的