`

mysql 触发器 简单实例

阅读更多

模拟mysql触发器的使用

一、新建游戏表

create table `game` (

          `id` int(11) not null auto_increment comment "主键ID",

          `name` varchar(255) not null comment"游戏名称",

          `online` int(11) not null comment "在线状态,1:在线-0:下线", PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

 

二、插入测试数据

insert into game(id,name,online) values (1,'神仙道',1);

insert into game(id,name,online) values (2,'搜狗地图',1);

insert into game(id,name,online) values (3,'免费小说',1);

insert into game(id,name,online) values (4,'泡妞利器',1);

insert into game(id,name,online) values (5,'炫酷桌面',1);

 

三、查询

select * from game;

1 神仙道1

2 搜狗地图 1

3 免费小说 1

4 泡妞利器 1

5 炫酷桌面 1

 

四、创建热榜游戏表

create table `hot_game` (

           `id` int(11) not null auto_increment comment "主键ID",

           `game_id` int(11) not null comment "游戏ID",

           PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

 

五、插入热榜游戏

insert into hot_game (id,game_id) values (1,1);

insert into hot_game (id,game_id) values (2,2);

insert into hot_game (id,game_id) values (3,3);

insert into hot_game (id,game_id) values (4,4);

insert into hot_game (id,game_id) values (5,5);

 

六、查询热榜游戏

1 1

2 2

3 3

4 4

5 5

 

七、创建触发器(游戏下线,热榜移除该游戏)

create trigger t_hot_game before update on game for each row

begin if new.online = 0

then delete from hot_game where game_id = old.id;

end if;

end ;

 

八、查询触发器

show triggers;

 

九、游戏下线 update game set online = 0 where id = 1;

 

十、查询热榜游戏列表

select * from hot_game;

2 2

3 3

4 4

5 5

触发器解释: 用来对数据进行监控,当执行delete、update或insert操作时,可以使用触发器来触发某些操作来代替程序编码,效率更高。

 

定义sql结束符

DROP TRIGGER IF EXISTS `updateegopriceondelete` ;

DELIMITER // 
CREATE 
TRIGGER `updateegopriceondelete` AFTER DELETE ON `customerinfo` 
FOR EACH ROW BEGIN 
DELETE FROM egoprice WHERE customerId=OLD.customerId; 
END //
DELIMITER ; 

其中DELIMITER 定好结束符为"$$", 然后最后又定义为";", MYSQL的默认结束符为";". 

分享到:
评论

相关推荐

    mysql触发器之创建多个触发器操作实例分析

    本文实例讲述了mysql触发器之创建多个触发器操作。分享给大家供大家参考,具体如下: 这次记录的内容mysql 版本必须得是5.7.2+的哈,之前的会不好使的。废话不多说,咱们开始正文哈。 在mysql 5.7.2+版本之前,我们...

    mysql触发器使用实例

    MySQL触发器是数据库管理系统中的一个重要特性,它允许在特定的数据操作(如INSERT、UPDATE或DELETE)发生时自动执行预定义的SQL语句。这为数据库的业务规则提供了强大的支持,可以确保数据的一致性和完整性。以下是...

    MySQL触发器.pdf

    ### MySQL触发器详解 #### 引言 MySQL触发器,作为MySQL 5.0版本引入的一项重要特性,为数据库管理提供了更为精细的控制能力。触发器允许在特定的数据库操作(如INSERT、UPDATE、DELETE)发生时自动执行SQL语句,...

    mysql触发器使用

    通过以上两个实例,我们可以看到MySQL触发器的强大功能,它们能够在无需编程的情况下自动执行预设的逻辑,大大简化了数据库的管理和维护工作。无论是数据的自动统计,还是审计日志的记录,触发器都能够提供高效且...

    mysql触发器之创建使用触发器简单示例

    本文实例讲述了mysql触发器之创建使用触发器。分享给大家供大家参考,具体如下: 我们可以可以使用CREATE TRIGGER语句创建一个新的触发器,来看下具体的语法: CREATE TRIGGER trigger_name trigger_time trigger_...

    mysql中触发器使用详解.docx

    MySQL中的触发器是一种数据库对象,它与特定的表相关联,并在对表执行INSERT、UPDATE或DELETE操作之前或之后自动执行预定义的SQL语句。触发器的主要作用是增强数据库的逻辑控制,确保数据完整性、记录操作日志以及...

    mysql触发器实例

    内含mysql的trigger触发器实例,修改即可使用。。。。。。

    mysql触发器.zip

    MySQL触发器是数据库管理系统中的一个重要特性,它允许在特定的数据库操作(如INSERT、UPDATE或DELETE)发生之前或之后执行自定义的SQL代码。这些自动执行的代码块可以用来实现复杂的业务逻辑,确保数据的一致性和...

    MySQL触发器、存储过程、自定义函数、视图示例

    ### MySQL触发器、存储过程、自定义函数、视图示例 #### 一、MySQL触发器 触发器是一种特殊类型的存储过程,它被设计为在特定事件(如INSERT、UPDATE或DELETE操作)发生时自动执行。触发器可以用来强制业务规则、...

    mysql触发器

    MySQL触发器是数据库管理系统中的一个重要特性,它允许在特定的数据库操作(如INSERT、UPDATE、DELETE)发生之前或之后执行自定义的SQL代码。这些自动执行的程序段可以帮助实现业务规则,数据验证,或者在数据发生...

    Mysql触发器介绍

    ### MySQL触发器详解 #### 一、引言 MySQL 的触发器与存储过程类似,都是内嵌于数据库的一种编程机制。触发器的概念最早出现在 MySQL 5.0 版本中,这一特性使得开发者能够编写自动化的数据库操作逻辑,用于响应...

    MySQL 触发器详解及简单实例

    MySQL触发器是数据库管理系统中的一种重要特性,它允许在特定的数据库操作(如INSERT、UPDATE或DELETE)之前或之后执行自定义的SQL语句。触发器可以用来维护数据的完整性和一致性,执行复杂的业务逻辑,或者实现一些...

    mysql触发器.pdf

    【MySQL触发器详解】 MySQL触发器是数据库管理系统中的一种重要特性,它允许用户在特定的数据库操作(如INSERT、UPDATE或DELETE)发生之前或之后自动执行预定义的SQL语句。这种特性使得数据库能实现更复杂的业务...

    mysql 触发器用法实例详解

    MySQL触发器语法详解:  触发器 trigger是一种特殊的存储过程,他在插入(inset)、删除(delete)或修改(update)特定表中的数据时触发执行,它比数据本身标准的功能更精细和更复杂的数据控制能力。触发器不是由...

    mysql 触发器文档

    本篇文档将着重介绍触发器这一特性,通过详细的解析与实例演示帮助用户了解如何在实际项目中有效地使用触发器。 #### 规约与风格 为了更好地展示实际代码,如来自MySQL客户端程序的输出结果,本文档将采用特殊字体...

    [数据库] Navicat for MySQL触发器更新和插入操作1

    3. **简单的Insert触发器示例**: - 假设有两个表,学生表(student)和成绩表(cj)。学生表包含学生信息,成绩表包含学号、姓名和各科成绩。 - 当在学生表中插入新学生时,我们可能希望自动在成绩表中添加对应的...

    MySQL 5.0 触发器.rar

    MySQL 5.0 触发器是数据库管理系统MySQL中的一个重要特性,它允许用户在特定的数据库操作(如INSERT、UPDATE、DELETE)发生时自动执行预定义的SQL语句,从而实现对数据的自动管理和控制。这在数据一致性、业务规则的...

    MySQL触发器深入解析.md

    ### MySQL触发器深入解析 #### 引言 触发器作为一种重要的数据库对象,为MySQL数据库带来了自动化执行特定任务的能力。这不仅增强了数据库的功能性,还提高了其智能化水平。尤其是在需要维护数据完整性、审计跟踪...

Global site tag (gtag.js) - Google Analytics