Oracle与Mysql中的触发器(Trigger)对比

Oracle触发器 Demo(通过触发器结合创建序列(sequence)的方式实现字段递增)

create table if not EXISTS hpwf_order_col_default(
    id int not null,
    fieldName int not null,
    fieldColumn varchar(1000) not null
)
;
create sequence hpwf_order_col_default_seq increment by 1 start with 1 nomaxvalue nocycle cache 10
;
create or replace trigger hpwf_order_col_default_trigger
before insert on hpwf_order_col_default for each row
begin
<!--这里通过sequence.nextval方法来将sequence 的next value赋值给最新插入的id-->
select hpwf_order_col_default_seq.nextval into :new.id from dual;
end;
;
create table if not EXISTS hpwf_order_col_use(
    id int not null,
    eid int null,
    tabid int null,
    colid int null,
    orderNum int null,
    orderType int null
)
;
<!--创建sequence-->
create sequence hpwf_order_col_use_seq increment by 1 start with 1 nomaxvalue nocycle cache 10
;
create or replace trigger hpwf_order_col_use_trigger
before insert on hpwf_order_col_use for each row
begin
select max(id)+1 into :new.id from hpwf_order_col_use;
end;
;

Mysql 触发器(Trigger)Demo(业务等同于Oracle)

create table if not EXISTS hpwf_order_col_use(
    id int not null,
    eid int null,
    tabid int null,
    colid int null,
    orderNum int null,
    orderType int null
)
;
DROP TRIGGER IF EXISTS hpwf_order_col_use_trigger;
DELIMITER //  
create trigger hpwf_order_col_use_trigger
before insert on hpwf_order_col_use for each row
begin
set @num=(select count(id) from hpwf_order_col_use);
if @num=0 THEN
set new.id=1;
ELSE 
set @newId=(select MAX(id)+1 FROM hpwf_order_col_use);
set new.id= @newId; 
end if;
end
// 
DELIMITER ;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,929评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,369评论 19 139
  • 一. Java基础部分.................................................
    wy_sure阅读 9,242评论 0 11
  • 1、引言 数据库设计过程中表、字段等的命名规范也算是设计规范的一部分,不过设计规范更多的是为了确保数据库设计的合理...
    SnowflakeCloud阅读 41,152评论 0 48
  • 遭遇史上最惨重的滑铁卢…… 今天,就卖了一贴! 我们谁都没有料想到,很无奈,这么惨的成绩……昨晚从老远的地方,满怀...
    玹燃法则阅读 5,993评论 0 0