当前位置: 首页 > article >正文

MySQL创建和管理触发器

1.在教务管理系统数据库d_eams的course表中,创建一个插入事件触发器tr_course,添加一条课程信息时,显示提示信息。

delimiter %%
create trigger tr_course after insert
on course for each row 
begin
set @tr_i ='操作成功!';
end%%
delimiter ;

insert into course
values('07013', 'UI设计', null, 4, 4, '4');
select @tr_i;

2.在d_eams数据库的student表中创建一个名为tr_update的触发器,该触发器将不允许用户修改表中的记录(本例通过ROLLBACK WORK子句恢复原来数据的方法,来实现记录不被修改)。
 

delimiter $$
create trigger tr_update after update
on student for each row 
begin
set @inf = '你不能做任何更改!';
end$$
delimiter ;

begin work;
update student
set 民族 ='蒙古族'
where 学号='201007003';
rollback work;
select @inf;
select * from student
where 学号 = '201007003';

3.在d_eams数据库的sc表中创建一个名为ct_delete的触发器,该触发器将对sc表中删除记录的操作给出提示信息,并取消当前的删除操作。(本例通过ROLLBACK WORK子句恢复原来数据的方法,来实现记录不被删除)。

delimiter $$
create trigger ct_delete before delete
on sc for each row 
begin 
set @info1='你无权删除此记录!';
end$$
delimiter ;

begin work;
delete from sc
where 学号 = '201007001';
rollback work;
select @info1;
select * from sc
where 学号 = '201007001';

4.查看ct_delete触发器。

show create trigger ct_delete;


5.删除ct_delete触发器。

drop trigger ct_delete;


 


http://www.kler.cn/a/404625.html

相关文章:

  • elasticsearch介绍和部署
  • cocos creator 3.8 一些简单的操作技巧,材质的创建 1
  • 如何理解Lua 使用虚拟堆栈
  • Linux运维篇-iscsi存储搭建
  • 什么是React Native?
  • unity webgl点击链接后微信下面有导航条问题
  • (附项目源码)Java开发语言,215 springboot 大学生爱心互助代购网站,计算机毕设程序开发+文案(LW+PPT)
  • 常用命令集
  • vue2中引入cesium全步骤
  • MongoDB调优利器:掌握性能分析工具mongostat
  • 字节跳动青训营刷题笔记14
  • Spark 分布式计算中网络传输和序列化的关系(二)
  • leetcode - 2516. Take K of Each Character From Left and Right
  • 2024年亚太C题第二版本二问题1求解过程+代码运行以及问题2-4超详细思路分析
  • 第三百三十节 Java网络教程 - Java网络UDP服务器
  • uni-app快速入门(十)--常用内置组件(下)
  • 查看docker日志 journalctl -u docker.service
  • Modern Effective C++ Item 11:优先考虑使用deleted函数而非使用未定义的私有声明
  • Webserver回顾
  • 【AI知识】两类最主流AI应用(文生图、ChatGPT)中的目标函数
  • React第五节 组件三大属性之 props 用法详解
  • ts: 定义一个对象接收后端返回对象数据,但是报错了有红色的红线为什么
  • 安全测试必学神器 --BurpSuite 安装及使用实操
  • Go 工具链详解(八):go telemetry
  • Wallpaper壁纸制作学习记录05
  • 【JavaSE 网络编程和日期与时间知识总结】