加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql学习mysql触发器的三个例子

发布时间:2020-12-12 02:25:25 所属栏目:MySql教程 来源:网络整理
导读:《Mysql学习mysql触发器的三个例子》要点: 本文介绍了Mysql学习mysql触发器的三个例子,希望对您有用。如果有疑问,可以联系我们。 导读:本节内容:mysql触发器实例例1,delimiter // create trigger InsertUser before insert on user for each row Begin

《Mysql学习mysql触发器的三个例子》要点:
本文介绍了Mysql学习mysql触发器的三个例子,希望对您有用。如果有疑问,可以联系我们。

导读:本节内容:mysql触发器实例例1,delimiter // create trigger InsertUser before insert on user for each row Begin inser...

MYSQL实例本节内容:
mysql触发器实例

MYSQL实例例1,
?

delimiter //???
create trigger InsertUser???
before insert on user??
for each row???
Begin??
insert into user_group(uid,gid) values(new.uid,'group4444444444');???
end;//???
delimiter ;??

MYSQL实例例2,
?

delimiter //???
create trigger InsertUser???
before insert on user??
for each row???
Begin??
IF new.Type=2 then??
insert into user_group(uid,'group4444444444');???
else??
insert into user_group(uid,'group55555555555')???
END IF;???
end;//???
delimiter ;?

MYSQL实例例3,???
?

delimiter //???
create trigger InsertUser???
before insert on user??
for each row???
Begin??
IF new.type=1 then??
insert into user_group(uid,'578d3369633b47bd9c1fe8bf905cbfb1');???
END IF;???
IF new.type=2 then??
?insert into user_group(uid,'387bcd57fc5a4c3c9de83ee210fef661');???
END IF;???
end;//???
delimiter ;

MYSQL实例mySql触发器实例

MYSQL实例在mysql中,使用触发器能进行一些约束.
例子,当Student表的StudentID列被发生更改时,BorrowStudent表的StudentID列也跟着更改.如果Student表删除某记录,BorrowStudent也删除对应StudentID的记录.
?

MYSQL实例/*先删除将要创建而存在的表*/
drop table if exists Student;
drop table if exists BorrowStudent;

MYSQL实例/*创建表*/
create table Student(
StudentID int not null primary key,
StudentName varchar(30) not null,
StudentSex enum('m','f') default 'm'
)engine=myisam;

MYSQL实例create table BorrowStudent(
BorrowRecord int not null auto_increment primary key,
StudentID int not null,
BorrorDate date,
ReturnDate date,
foreign key(StudentID) references Student(StudentID)
)engine=myisam;

MYSQL实例/*插入记录*/
insert into Student values(1235412,'java','m');
insert into Student values(3214562,'jiajia','m');
insert into Student values(5441253,'purana','f');

MYSQL实例insert into BorrowStudent(StudentID,BorrorDate,ReturnDate)
values(1235412,'2007-01-01','2007-01-07');
insert into BorrowStudent(StudentID,ReturnDate)
values(3214562,ReturnDate)
values(5441253,'2007-01-07');

MYSQL实例/*创建触发器*/
delimiter $$
drop trigger if exists tduStudent$$
drop trigger if exists tddStudent$$
create trigger tduStudent before update
on Student for each row
begin
if new.StudentID!=old.StudentID then
update BorrowStudent
set BorrowStudent.StudentID=new.StudentID
where BorrowStudent.StudentID=old.StudentID;
end if;
end$$

MYSQL实例create trigger tddStudent before delete
on Student for each row
begin
delete
from BorrowStudent
where BorrowStudent.StudentID=old.StudentID;
end$$
delimiter ;

《Mysql学习mysql触发器的三个例子》是否对您有启发,欢迎查看更多与《Mysql学习mysql触发器的三个例子》相关教程,学精学透。编程之家PHP学院为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读