新闻动态
新闻动态
NEWS INFORMATION

Oracle 触发器实现主键自增效果

发布日期:2022-01-31 17:12 | 文章来源:源码中国

触发器的作用

触发器的作用类似拦截器.把一些针对数据库的DML操作(insert/update/delete/select)进行拦截,符合业务要求的进行操作,不符合要求的操作可以通过抛出异常来阻止

说白了就是数据确认(after)与安全性检查(before),此外触发器不针对select操作

1.首先创建表testUser

        Oracle设置为不区分大小的,所以table名,言简意赅即可。

CREATE TABLE testUser ( id NUMBER ( 11 ) primary key, name VARCHAR ( 50 ) );

2.创建sequence,最小值为1,最大值为99999999,初始为1,步长1

        sequence名的话针对某张表习惯命名为:seq_表名

CREATE sequence seq_testUser minvalue 1 maxvalue 99999999 START WITH 1 INCREMENT BY 1 nocache ORDER;

3.创建触发器

        触发器是基于sequence 所以习惯命名为:trg_sequence名

CREATE 
	OR REPLACE TRIGGER trg_seq_testUser BEFORE INSERT ON testUser FOR EACH ROW
BEGIN
	SELECT
		seq_testUser.nextval INTO : new.id 
	FROM
		dual;
	
END;

4.插入一条数据

insert into testUser(username) values('强哥0');
insert into testUser(username) values('强哥1');
insert into testUser(username) values('强哥2');

5查询结果

select * from testUser

到此这篇关于Oracle 触发器实现主键自增的文章就介绍到这了,更多相关Oracle 触发器主键自增内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

香港服务器租用

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部