更新IDC_Device_Info表记录时,记录下修改的时间,存到Device_Last_Modify表中。
DROP TRIGGER IF EXISTS deviceLastUpdate;
CREATE TRIGGER deviceLastUpdate
AFTER UPDATE ON `IDC_Device_Info`
FOR EACH ROW
BEGIN
BEGIN
DECLARE cntOld TINYINT DEFAULT 0;
DECLARE serviceIdOld INT DEFAULT 0;
DECLARE deviceTypeOld INT DEFAULT 0;
SET serviceIdOld = IFNULL(OLD.Service_ID,0);
SET deviceTypeOld = IFNULL(OLD.Device_Type,0);
SELECT COUNT(*) INTO cntOld FROM Device_Last_Modify WHERE Service_ID = serviceIdOld AND Device_Type = deviceTypeOld;
IF cntOld > 0 THEN
UPDATE Device_Last_Modify SET Last_Modify = UNIX_TIMESTAMP(NOW()) WHERE Service_ID = serviceIdOld AND Device_Type = deviceTypeOld;
ELSE
INSERT INTO Device_Last_Modify VALUES (serviceIdOld, deviceTypeOld, UNIX_TIMESTAMP(NOW()));
END IF;
END;
BEGIN
DECLARE cntNew TINYINT DEFAULT 0;
DECLARE serviceIdNew INT DEFAULT 0;
DECLARE deviceTypeNew INT DEFAULT 0;
SET serviceIdNew = IFNULL(NEW.Service_ID,0);
SET deviceTypeNew = IFNULL(NEW.Device_Type,0);
SELECT COUNT(*) INTO cntNew FROM Device_Last_Modify WHERE Service_ID = serviceIdNew AND Device_Type = deviceTypeNew;
IF cntNew > 0 THEN
UPDATE Device_Last_Modify SET Last_Modify = UNIX_TIMESTAMP(NOW()) WHERE Service_ID = serviceIdNew AND Device_Type = deviceTypeNew;
ELSE
INSERT INTO Device_Last_Modify VALUES (serviceIdNew, deviceTypeNew, UNIX_TIMESTAMP(NOW()));
END IF;
END;
END;
分享到:
相关推荐
这份“MYSQL学习资源及笔记-入门必备”应该涵盖了这些主题,并可能包含实践练习和示例,是MySQL初学者的宝贵学习材料。通过深入学习和实践,你可以建立起坚实的基础,进一步探索更高级的主题,如复制、集群和高性能...
这只是MySQL笔记的部分内容,实际上MySQL的功能远不止这些,还包括视图、索引、事务处理、存储过程、触发器、函数等多个高级特性。了解并掌握这些内容,将有助于在实际项目中更高效地管理和操作数据。
笔记中将通过示例演示CREATE TABLE、ALTER TABLE和DROP TABLE的使用。 四、查询语言SQL SQL是查询和操作数据的核心工具。这部分将涵盖单表查询(包括WHERE子句、ORDER BY、GROUP BY、HAVING等)、多表查询(JOIN...
MySQL是世界上最受欢迎的关系型数据库管理系统(RDBMS)之一,被广泛应用于Web应用程序和各种规模的企业...然而,要想成为真正的MySQL专家,还需要不断实践和深入学习更高级的主题,如存储过程、触发器、视图、分区等。
### MySQL入门知识点详解 #### 一、数据库概述 1. **数据存储方式**: - 数据库是组织、存储和...以上是MySQL入门阶段的一些基础知识点,通过这些内容的学习,可以帮助初学者快速掌握MySQL的基本操作和使用技巧。
MySQL是世界上最受欢迎的关系型数据库管理系统之一,用于存储和管理数据。在学习MySQL的过程中,...在实际工作中,不断学习和实践,掌握更多高级特性,如视图、存储过程、触发器等,将使你成为更出色的数据库管理员。
### MySQL基础笔记 #### 1.1 MySQL 表复制 在MySQL中,有时我们需要复制一个现有的表结构或者数据。这可以通过以下两种方式实现: - **使用`LIKE`关键字**: 如果我们只想复制表结构而不复制数据,可以使用`LIKE`...
这份"mysql 学习笔记️.zip"压缩包文件很可能是为了帮助初学者或者进阶者系统地学习MySQL而准备的资料。以下是基于这个主题的详细知识点讲解: 1. **MySQL基础**: - 数据库概念:理解数据库是什么,以及为什么...
### MySQL数据库入门实战课程-重点笔记 #### 一、数据库基础知识 1. **数据库定义**: - 数据库(Database, DB)是一种组织和存储数据的方式,以便用户能够方便地访问、管理和更新数据。 2. **SQL简介**: - SQL...
通过这些笔记,你可以学习到如何使用 MySQL 进行数据库管理和开发。 MySQL 基础知识和概念 SQL 语句和操作 MySQL 数据库管理和优化 高级内容,如存储过程、触发器和索引优化等 MySQL锁、读写分离、分库分表等 实际...
这份"Mysql学习笔记.zip"压缩包文件很可能包含了一系列关于MySQL的学习资料,如教程、笔记、示例代码或练习题,帮助用户深入理解并掌握MySQL的使用。 1. **MySQL基础** - 数据库概念:了解什么是数据库,以及...
这份“学习MySQL笔记”资源可能是为了帮助用户深入理解MySQL的各个方面,包括安装、基本操作、查询语言、表设计、索引、事务处理、视图、存储过程、触发器、备份与恢复等。 首先,MySQL的安装是初学者需要掌握的第...
这个“一个学习MYSQL的笔记.zip”压缩包很可能是包含了一系列关于MySQL学习资料的文档,如教程、笔记、示例代码等。下面我们将深入探讨MySQL的一些核心概念和技术。 1. **基础概念**: - **SQL**:Structured ...
- 监控表变动的触发器示例,说明了如何利用触发器监控表的增删改操作。 - IP限制用户登录的触发器实现,展示了如何通过触发器限制特定IP的登录尝试。 通过熟练掌握这些概念和用法,你可以有效地利用Oracle触发器...
### MySQL基础整理笔记 #### 一、MySQL配置与基本操作 **1. 配置文件 my.ini** - **概述**:`my.ini` 文件是 MySQL 的主要配置文件,用于定义 MySQL 服务的各种参数和设置。 - **作用**:通过修改 `my.ini` 文件...
这个“10-12MySQL.zip”压缩包可能包含一系列关于MySQL的教程、笔记、代码示例或者数据库相关项目。下面将详细讨论MySQL的核心知识点。 一、MySQL基础 1. 数据库与表:MySQL中的数据库是存储数据的逻辑单元,而表...
以上是对MySQL笔记的简要概述,实际笔记中可能包含更详细的操作步骤、示例和最佳实践,帮助读者全面掌握MySQL的使用和管理。学习并熟练掌握这些知识点,将有助于你在数据库管理和开发工作中游刃有余。