广告
返回顶部
首页 > 资讯 > 数据库 >MySQL(89)MySQL查看触发器
  • 259
分享到

MySQL(89)MySQL查看触发器

mysql数据库sql 2023-10-25 10:10:34 259人浏览 薄情痞子
摘要

Mysql查看触发器 查看触发器是指查看数据库中已经存在的触发器的定义、状态和语法信息等。mysql 中查看触发器的方法包括 SHOW TRIGGERS 语句和查询 infORMation_schema 数据库下的 triggers 数据表

Mysql查看触发器

查看触发器是指查看数据库中已经存在的触发器的定义、状态和语法信息等。mysql 中查看触发器的方法包括 SHOW TRIGGERS 语句和查询 infORMation_schema 数据库下的 triggers 数据表等。本节将详细介绍这两种查看触发器的方法。

SHOW TRIGGERS语句查看触发器信息

在 Mysql 中,可以通过 SHOW TRIGGERS 语句来查看触发器的基本信息,语法格式如下:

SHOW TRIGGERS;

示例 1首先创建一个数据表 account,表中有两个字段,分别是 INT 类型的 accnum 和 DECIMAL 类型的 amount。SQL 语句和运行结果如下:

mysql> CREATE TABLE account(    -> accnum INT(4),    -> amount DECIMAL(10,2));Query OK, 0 rows affected (0.49 sec)

创建一个名为 trigupdate 的触发器,每次 account 表更新数据之后都向 myevent 数据表中插入一条数据。创建数据表 myevent 的 SQL 语句和运行结果如下:

mysql> CREATE TABLE myevent(    -> id INT(11) DEFAULT NULL,    -> evtname CHAR(20) DEFAULT NULL);Query OK, 0 rows affected (0.26 sec)

创建 trigupdate 触发器的 SQL 代码如下:

mysql> CREATE TRIGGER trigupdate AFTER UPDATE ON account    -> FOR EACH ROW INSERT INTO myevent VALUES(1,'after update');Query OK, 0 rows affected (0.15 sec)

使用 SHOW TRIGGERS 语句查看触发器(在 SHOW TRIGGERS 命令后添加 \G,这样显示信息会比较有条理),SQL 语句和运行结果如下:

mysql> SHOW TRIGGERS \G*************************** 1. row ***************************             Trigger: trigupdate               Event: UPDATE               Table: account           Statement: INSERT INTO myevent VALUES(1,'after update')              Timing: AFTER             Created: 2020-02-24 14:07:15.08            sql_mode: STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION             Definer: root@localhostcharacter_set_client: gbkcollation_connection: gbk_chinese_ci  Database Collation: latin1_swedish_ci1 row in set (0.09 sec)

由运行结果可以看到触发器的基本信息。对以上显示信息的说明如下:

  • Trigger 表示触发器的名称,在这里触发器的名称为 trigupdate;
  • Event 表示激活触发器的事件,这里的触发事件为更新操作 UPDATE;
  • Table 表示激活触发器的操作对象表,这里为 account 表;
  • Statement 表示触发器执行的操作,这里是向 myevent 数据表中插入一条数据;
  • Timing 表示触发器触发的时间,这里为更新操作之后(AFTER);
  • 还有一些其他信息,比如触发器的创建时间、SQL 的模式、触发器的定义账户和字符集等,这里不再一一介绍。

SHOW TRIGGERS 语句用来查看当前创建的所有触发器的信息。因为该语句无法查询指定的触发器,所以在触发器较少的情况下,使用该语句会很方便。如果要查看特定触发器的信息或者数据库中触发器较多时,可以直接从 information_schema 数据库中的 triggers 数据表中查找。

在triggers表中查看触发器信息

在 MySQL 中,所有触发器的信息都存在 information_schema 数据库的 triggers 表中,可以通过查询命令 SELECT 来查看,具体的语法如下:

SELECT * FROM information_schema.triggers WHERE trigger_name= '触发器名';

其中:'触发器名'用来指定要查看的触发器的名称,需要用单引号引起来。这种方式可以查询指定的触发器,使用起来更加方便、灵活。

示例 2下面使用 SELECT 命令查看 trigupdate 触发器,SQL 语句如下:

SELECT * FROM information_schema.triggers WHERE TRIGGER_NAME= 'trigupdate'\G

上述命令通过 WHERE 来指定需要查看的触发器的名称,运行结果如下:

mysql> SELECT * FROM information_schema.triggers WHERE TRIGGER_NAME= 'trigupdate'\G*************************** 1. row ***************************           TRIGGER_CATALOG: def            TRIGGER_SCHEMA: test              TRIGGER_NAME: trigupdate        EVENT_MANIPULATION: UPDATE      EVENT_OBJECT_CATALOG: def       EVENT_OBJECT_SCHEMA: test        EVENT_OBJECT_TABLE: account              ACTION_ORDER: 1          ACTION_CONDITION: NULL          ACTION_STATEMENT: INSERT INTO myevent VALUES(1,'after update')        ACTION_ORIENTATION: ROW             ACTION_TIMING: AFTERACTION_REFERENCE_OLD_TABLE: NULLACTION_REFERENCE_NEW_TABLE: NULL  ACTION_REFERENCE_OLD_ROW: OLD  ACTION_REFERENCE_NEW_ROW: NEW                   CREATED: 2020-02-24 16:07:15.08                  SQL_MODE: STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION                   DEFINER: root@localhost      CHARACTER_SET_CLIENT: gbk      COLLATION_CONNECTION: gbk_chinese_ci        DATABASE_COLLATION: latin1_swedish_ci1 row in set (0.22 sec)

由运行结果可以看到触发器的详细信息。对以上显示信息的说明如下:

  • TRIGGER_SCHEMA 表示触发器所在的数据库;
  • TRIGGER_NAME 表示触发器的名称;
  • EVENT_OBJECT_TABLE 表示在哪个数据表上触发;
  • ACTION_STATEMENT 表示触发器触发的时候执行的具体操作;
  • ACTION_ORIENTATION 的值为 ROW,表示在每条记录上都触发;
  • ACTION_TIMING 表示触发的时刻是 AFTER;
  • 还有一些其他信息,比如触发器的创建时间、SQL 的模式、触发器的定义账户和字符集等,这里不再一一介绍。 

上述 SQL 语句也可以不指定触发器名称,这样将查看所有的触发器,SQL 语句如下:

SELECT * FROM information_schema.triggers \G

这个语句会显示 triggers 数据表中所有的触发器信息。

来源地址:https://blog.csdn.net/m0_54144956/article/details/131332458

您可能感兴趣的文档:

--结束END--

本文标题: MySQL(89)MySQL查看触发器

本文链接: https://www.lsjlt.com/news/442226.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL(89)MySQL查看触发器
    MySQL查看触发器 查看触发器是指查看数据库中已经存在的触发器的定义、状态和语法信息等。MySQL 中查看触发器的方法包括 SHOW TRIGGERS 语句和查询 information_schema 数据库下的 triggers 数据表...
    99+
    2023-10-25
    mysql 数据库 sql
  • MySQL | MySQL触发器
    目录 一、创建触发器 1.2 创建只有一个执行语句的触发器 1.2 创建有多个执行语句的触发器 二、查看触发器 2.1 利用SHOW TRIGGERS语句查看触发器信息 2.2 在triggers表中查看触发器信息 三、删除触发器 一、创...
    99+
    2023-09-02
    数据库 sql mysql 数据库开发 数据库架构
  • MySQL——触发器
    基本语法 //创建触发器 CREATE TRIGGER name //删除触发器 DROP TRIGGER name 创建触发器 在创建触发器时需要给出4条信息 唯一的触发器名 触发器需要关联的表 触发器应该响应...
    99+
    2020-02-06
    MySQL——触发器
  • MySQL-触发器
    一、触发器 触发器(TRIGGER)是MySQL的数据库对象之一,从5.0.2版本开始支持。该对象与编程语言中的函数非常类似,都需要声明、执行等。但是触发器的执行不是由程序调用,也不是由手工启动,而是由事件...
    99+
    2022-10-18
  • MySQL触发器
    1、 触发器定义: 触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进...
    99+
    2019-06-10
    MySQL触发器
  • MySQL 触发器
    文章目录 1.简介2.行级与语句级触发器3.触发时机4.触发器优缺点5.创建触发器语法示例 6.查看触发器7.删除触发器参考文献 1.简介 触发器(Trigger)是与表关联的命名数据库对象,当表发生特定事件时激活。 触发器...
    99+
    2023-08-30
    mysql 触发器
  • MySQL查看存储过程和函数、视图和触发器
    1.查询数据库中的存储过程和函数 方法一: select `name` from mysql.proc where db = 'your_db_name' and `type` ...
    99+
    2022-10-18
  • MySQL触发器基本用法详解【创建、查看、删除等】
    本文实例讲述了MySQL触发器基本用法。分享给大家供大家参考,具体如下: 一、MySQL触发器创建: 1、MySQL触发器的创建语法: CREATE [DEFINER = { 'user' | CURRENT...
    99+
    2022-05-29
    MySQL 触发器
  • mysql触发器之触发器的增删改查操作示例
    本文实例讲述了mysql触发器之触发器的增删改查操作。分享给大家供大家参考,具体如下: 我们在创建触发器后,可以在包含触发器定义文件的数据文件夹中显示其定义。触发器作为纯文本文件存储在以下数据库文件夹中: ...
    99+
    2022-10-18
  • mysql之触发器
           触发器是一种 特殊的存储过程,不同的是存储过程要用CALL来调用,而触发器不需要使用CALL也不需要手工启动,只要当一个预...
    99+
    2022-10-18
  • mysql触发器(trigger)
    触发器的作用 监听数据的变化,以实现当数据变化时的关联操作,不过感觉没有实际作用,触发器的功能如果用代码逻辑来控制感觉会更正规些,毕竟团队中的其它人不一定会看到你定义的触发器,但一定能看到你的代码。那为何还...
    99+
    2022-10-18
  • navicat查看触发器的方法
    这篇文章主要介绍navicat查看触发器的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!  触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整...
    99+
    2022-10-18
  • MySQL进阶——触发器
    1.触发器定义 同存储过程和函数类似,MySQL中的触发器也是存储在系统内部的一段程序代码,可以把它看作是一个特殊的存储过程。所不同的是,触发器无需人工调用,当程序满足定义条件时就会被MySQL自动调用。这些条件可以称为触发事件,包括INS...
    99+
    2023-10-28
    数据库
  • Mysql中的触发器
      阅读目录 什么是触发器 特点及作用 例子:创建触发器,记录表的增、删、改操作记录 弊端 什么是触发器 简单的说,就是一张表发生了某件事(插入、删除、更新操作),然后自动触发了预先编写好的若干条SQL语句的执行; 特点及...
    99+
    2018-09-20
    Mysql中的触发器
  • 十一、MySQL触发器
      MySQL的触发器和存储过程一样,都是嵌入到MySQL的一段程序。触发器是由时间来触发某个操作,这些时间包括INSERT、UODATE和DELETE语句。如果定义了触发程序,当数据库执...
    99+
    2022-10-18
  • mysql查询触发器的语句是什么
    这篇文章主要介绍“mysql查询触发器的语句是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql查询触发器的语句是什么”文章能帮助大家解决问题。 ...
    99+
    2022-10-19
  • mysql触发器怎么用
    这篇文章给大家分享的是有关mysql触发器怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。说明触发器也是存储过程程序的一种,而触发器内部的执行SQL语句是可以多行操作的。在MySQL的存储过程程序中,要定义结...
    99+
    2023-06-20
  • MYSQL触发器的使用
    概念:触发器是一种特殊的储存过程,在满足定义条件操作时触发,并且自动执行触发器中预先设定好的定义的语句集合 触发器是特殊的储存过程 触发器是在对表操作时,满足条件就可以自动调用预先编译的sql语句 安全性 可以基于数据库的值使用户...
    99+
    2021-10-21
    MYSQL触发器的使用
  • MySQL触发器之初见
    触发器 语法 CREATE TRIGGER trigger_name trigger_time trigger_event NO table_name FOR EACH ROW trigger_stmt trigger_name: ...
    99+
    2014-11-27
    MySQL触发器之初见
  • mysql基础三 触发器
    商品表-- Table "goods" DDL: CREATE TABLE goods (gid int(11) NOT NULL,name varchar(20) DEFAU...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作