多个触发器对一个表具有相同的操作时间和事件mysql错误

2024-01-28

我是触发器新手,并且收到“一张表的多个触发器具有相同的操作时间和事件”错误。

我创建了一个更新后和删除后,这是两个单独的操作时间/事件,所以我不太确定为什么会收到错误。

这是我的查询:

CREATE TRIGGER `new_enrolment` AFTER INSERT ON `mdl_user_enrolments` FOR EACH ROW BEGIN
INSERT INTO c_master (
ud,
firstname,
lastname,
email,
username,
cid,
course
)
SELECT 
mdl_user.id AS uid, 
mdl_user.firstname, 
mdl_user.lastname, 
mdl_user.email, 
mdl_user.suspended, 
mdl_user.username, 
mdl_enrol.courseid AS cid,
mdl_course.fullname AS course
FROM mdl_user_enrolments INNER JOIN mdl_enrol ON mdl_user_enrolments.enrolid = mdl_enrol.id
 INNER JOIN mdl_course ON mdl_enrol.courseid = mdl_course.id
 INNER JOIN mdl_user ON mdl_user.id = mdl_user_enrolments.userid
WHERE userid = NEW.userid;
END;

CREATE TRIGGER `remove_enrolment` AFTER DELETE ON `mdl_user_enrolments` FOR EACH ROW BEGIN
SELECT mdl_enrol.courseid, 
mdl_user_enrolments.userid, 
mdl_user_enrolments.enrolid
FROM mdl_user_enrolments INNER JOIN mdl_enrol ON mdl_user_enrolments.enrolid = mdl_enrol.id
WHERE mdl_user_enrolments.enrolid = OLD.enrolid

DELETE FROM c_master
WHERE uid = OLD.userid AND mdl_enrol.courseid;
END;

因为我对这一切都是新手,所以我可能错过了一些简单的东西。


Brian,您可能已经在表中多次添加和删除相同的触发器,而您忘记了上次在再次创建它之前删除它。确保在再次创建之前已将其删除

DROP TRIGGER [IF EXISTS] [schema_name.]trigger_name

and then

CREATE TRIGGER ....

文档here http://dev.mysql.com/doc/refman/5.0/en/drop-trigger.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多个触发器对一个表具有相同的操作时间和事件mysql错误 的相关文章

  • 无法启动 MySQL 服务器 - 控制进程退出并出现错误代码

    我的 mysql 服务器停止后无法启动 命令使用 sudo etc init d mysql restart Error 重新启动 mysql 通过 systemctl mysql serviceJob for mysql service
  • Hibernate 对集合的查询过滤器

    我想执行以下查询 from Item i where i categoryItems catalogId catId 然而 这会产生以下异常 非法尝试取消引用集合 所以我用谷歌搜索 找到了这个 Hibernate 论坛帖子https for
  • 截断 Mysql 表 Cron 作业?

    我在如何使用 cron 作业截断 Mysql 表时遇到了一些麻烦 无论我尝试什么 我似乎都无法让数据库清除表格 感谢您的帮助 mysql uderp example pexample hlocalhost Dexample e TRUNCA
  • InnoDB 因读未提交而死锁! - Java - Glassfish - EJB3(JPA/Hibernate)

    几天来 我在使用 Glassfish EJB3 和 Mysql InnoDB 的 Java 应用程序上遇到了死锁问题 配置 Mysql InnoDB Ver 14 12 Distrib 5 0 51a 适用于 debian linux gn
  • 使用 PHP 的 MySQL 连接字符串

    我正在尝试通过本地计算机连接到托管在我的服务器上的数据库 我的服务器有cPanel 11 它是一个典型的共享服务器 由CentOS提供支持 安装了PHP和MySQL 准确地说 我在同一台服务器上持有经销商帐户 我想在不同帐户或域之间访问数据
  • MySQL PHP邮政编码比较具体距离

    我试图找出比较一个邮政编码 用户提供的 和一大堆其他邮政编码 现在大约有 200 个邮政编码 之间的距离的最有效方法 相对于加载时间 但它会随着时间的推移而增加 我不需要任何精确的东西 只是在球场上 我下载了整个美国的邮政编码 csv 文件
  • MySQL MIN/MAX 所有行

    我有桌子Races与行ID Name and TotalCP 我选择分钟 TotalCP FROM Races 但是我想选择具有最小值的整行 我如何在单个查询中做到这一点 从聚合值获取整行的一般形式是 SELECT FROM Races W
  • 如何使用 vitess 仅对特定表进行分片

    我创建了一个包含三个表的未分片键空间 现在我想对前两个表的键空间进行分片 但不想对第三个表进行分片 如何才能做到这一点 Vitess 文档不包含任何与此相关的信息或示例 请帮忙 Thanks vitess 中的垂直分片与水平分片类似 您应该
  • 如何将ElasticSearch与MySQL集成?

    在我的一个项目中 我计划将 ElasticSearch 与 MySQL 结合使用 我已经成功安装ElasticSearch 我可以单独管理ES中的索引 但我不知道如何用 MySQL 实现同样的功能 我读过一些文件 但我有点困惑 没有明确的想
  • MySQL 查询到 CSV [重复]

    这个问题在这里已经有答案了 有没有一种简单的方法来运行MySQL查询来自linux命令行并以csv格式输出结果 这就是我现在正在做的事情 mysql u uid ppwd D dbname lt lt EOQ sed e s g tee l
  • PDO PHP 连接,致命错误

    我的连接类 firstcode php class DB functions public db function construct try db new PDO mysql localhost dbname xxx charset ut
  • 如何修改现有表以添加时区

    我有一个包含 500 多个表的大型应用程序 我必须将应用程序转换为时区感知 当前应用程序使用new java util Date GETDATE 与服务器的时区 即没有任何时区支持 我已将这项任务分为几个步骤 以便于开发 我确定的第一个步骤
  • 从按日期时间排序的 MySQL 表中获取用户的最后一个条目

    我有一张看起来像这样的桌子 USERNAME DATA DATETIME Jhon text1 2010 06 01 16 29 43 Mike text2 2010 06 01 16 29 22 Silver text3 2010 05
  • MySql - 复制监控工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个主 从 MySql 复制 我正在寻找一个允许我监视复制的工具 查看它没有错误 检查滞后等 我更喜
  • 不允许在 php 中连接到此 MariaDB 服务器

    我尝试在 php 中连接远程服务器数据库 但出现以下错误 Host xx xxx xx xx is not allowed to connect to this MariaDB server in 我的连接代码是这样的 servername
  • 如何优化这个MySQL慢(非常慢)查询?

    我有一个 2 GB 的 mysql 表 包含 500k 行 我在没有负载的系统上运行以下查询 select from mytable where name in n1 n2 n3 n4 bunch more order by salary
  • 在 MySQL 中对整数字段运行带引号的数字(字符串)查询时会发生哪些复杂情况

    在 SQL 中 不应引用整数 因为如果引用 它将是一个字符串 但我很好奇如果我这样做会出现什么问题 并发症 例如 SELECT FROM table WHERE id 1 正确的 vs SELECT FROM table WHERE id
  • MySql 5.7 ORDER BY 子句不在 GROUP BY 子句中并且包含非聚合列

    我试图在不禁用 my ini 中的 only full group by 的情况下弄清楚 这是我的查询 SELECT p title COUNT t qty AS total FROM payments t LEFT JOIN produc
  • MySQL 8 用逗号分割字符串并将其转换为JSON ARRAY

    我有以下字符串 a b c d 我想将它转换成一个 json 数组 像这样 a b c d MySQL 8 有什么函数可以实现这个功能吗 Try SELECT CAST CONCAT REPLACE a b c d AS JSON See
  • 合并两个 MYSQL SELECT 查询[重复]

    这个问题在这里已经有答案了 可能的重复 如何将两个 Post Category 表 MYSQL SELECT 查询合并为一个 https stackoverflow com questions 12972130 how to combine

随机推荐

  • iPhone SDK - 如何以编程方式使用动画滚动 UITableView?

    如何使用动画将 UITableView 滚动到特定位置 目前我正在使用此代码跳转到一个位置 tableController gt viewDidLoad self tableView reloadData NSIndexPath index
  • Android Examer Monkey 开始随机播放音频文件

    我正在运行锻炼猴子来测试我的 Android 应用程序 作为我的应用程序的一部分 我播放给出单词发音的媒体文件 我已将这些文件放在 Android 音乐播放器无法读取的目录中 然而 锻炼猴子抛出了一些事件序列 这些事件序列似乎激活了音乐播放
  • 使用 gmail api 访问委托邮件文件夹

    假设有 电子邮件受保护 cdn cgi l email protection and 电子邮件受保护 cdn cgi l email protection Alice 已将她的帐户委托给 Bob 当我向 Bob 进行身份验证并尝试使用 RE
  • 针对 XP 的 Visual Studio 2012 编译 - 无效 win32 - v110_xp

    我有 Visual Studio 2012 update 4 和 Windows SDK 7 1 我选择 Visual Studio 2012 Windows XP v110 xp 工具包 并将包含目录更改为使用 WindowsSdkDir
  • 无法通过反射设置器设置字段值

    在使用 hibernate 和 MySQL 的 spring mvc 应用程序中 我收到一个错误 该错误似乎表明Name实体找不到设置器id的财产BaseEntity的超类Patient实体 我该如何解决这个错误 这是错误消息 Caused
  • 是否有必要为每个用例都包含登录信息?

    我将设计一个具有登录功能的系统 登录后 登录的用户可以执行几项操作 因此是否需要包括login用例由那几个用例组成 在大多数情况下 它只会让你的图表变得混乱 登录既不复杂 也不会给您带来太多附加值作为用例 在包含用例和描述的文本文档中 包含
  • JAVAMAIL:AUTH NTLM 失败

    我尝试使用微软交换服务器在本地网络中用java发送电子邮件 这是我的代码 import java io UnsupportedEncodingException import java util Properties import java
  • html2pdf页码编号

    我有这样的代码 html2pdf new HTML2PDF P A4 en html2pdf gt WriteHTML html html2pdf gt Output 如何在文档底部添加页码 我仍在寻找它 我刚刚找到了解决方案 在您的模板中
  • 如何更新 Angular 库项目?

    我有一个使用 Angular 11 版本生成的 Angular 库 现在我想将其更新到 Angular 12 但使用 ng update 命令没有成功 我使用了以下命令 ng update project my lib 上述库已发布在 np
  • 使用 TalkBack 时,Android focusable 和 importantForAccessibility 有什么区别?

    我注意到在很多情况下android importantForAccessibility yes 可以替换为android focusable true 与 TalkBack 的工作方式完全相同 什么时候应该android important
  • 在 dc.js / Crossfilter 中添加过滤器不更新图表

    js小提琴 http jsfiddle net PYeFP http jsfiddle net PYeFP 我设置了一个条形图 用于显示用户每天的出行次数 tripVolume dc barChart trip volume width 9
  • 了解Android webview javascript接口

    我创建了一个安卓WebView 并注入javascript接口使用addJavascriptInterface mObject jsinterface 它工作正常 直到我使用 JavaScript 在 JavaScript 中创建具有相同名
  • :第一个孩子与 ng-repeat

    我有一个 ng repeat 并且只想将样式应用于第一个div与班级type在 ng repeat 中 div class my list div class type span item label span div div class
  • 拖放 imageview android

    我目前正在开发一款游戏 因为有一个框架布局 其中有一个 Horizo ntalView 和一个 VerticalView 和 AbsoluteLayout 而 Absolutelayout 位于右上角 因为有一个 ImageView 现在
  • 如何更改单个表格行的边框颜色?

    我试图通过更改单个行的边框颜色来突出显示该表行 这是我的CSS table border collapse collapse td min width 100px border 1px solid green highlight td bo
  • MVC5 的嵌套布局

    我看过一些关于这个主题的帖子 具有级联部分的 Razor 嵌套布局 https stackoverflow com questions 5525602 razor nested layouts with cascading sections
  • SSRS 与 Crystal Reports [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 控制多个 JMS 队列的消耗

    我在任何地方都找不到这个信息 我有两个队列 JmsListener destination p1 JmsListener destination p2 如何确保我一次只处理 1 条消息 即使我正在监听 2 个队列 以及如何配置对首先从哪个队
  • 在xamarin中创建一个cocossharp项目

    我是xamarin studio的新手 我试图按照官方指南创建一个cocosproject 但是这个文档不是很清楚 我的项目有很多错误 https developer xamarin com guides xamarin forms adv
  • 多个触发器对一个表具有相同的操作时间和事件mysql错误

    我是触发器新手 并且收到 一张表的多个触发器具有相同的操作时间和事件 错误 我创建了一个更新后和删除后 这是两个单独的操作时间 事件 所以我不太确定为什么会收到错误 这是我的查询 CREATE TRIGGER new enrolment A