gpt4 book ai didi

MySQL 触发器 - 更新后插入不触发插入

转载 作者:行者123 更新时间:2023-11-30 22:17:30 25 4
gpt4 key购买 nike

在使用 MySQL 从初始表触发更新后,我试图通过将记录插入日志表来记录一个表的更新。

我似乎无法获得下面的代码来导致插入发生。

我需要做什么来解决这个问题?

触发代码

     CREATE TRIGGER `issueaim_update` AFTER UPDATE ON `issues`
FOR EACH ROW INSERT INTO issuehistory
SELECT 'update', (select max(revision)+1 from issuehistory where issueid = i.issueid), NOW(), '', IssueID, ProjectID, IssueTitle, Criticality, AssignorID, OwnerID, AltOwnerID, ApproverID, AssignedDate, CompletionDate, DueDate, ECD, ClosedDate, IssueStatement, ClosureCriteria, ClosureStatement, RootCause, CorrectiveAction, IssueResolutionVerification, RejectionJustification, NEW.Category1, Category2, Category3, Category4
FROM ProjectAIM.issues AS i WHERE IssueID = NEW.IssueID and ProjectID = NEW.ProjectID

错误日志 - 最近记录的错误

2016-06-12 21:55:39 10e0 InnoDB: Error: Tablespace for table "mysql"."innodb_table_stats" is missing.

2016-06-12 21:55:39 10e0 InnoDB: Error: Fetch of persistent statistics requested for table "projectaim"."issues" but the required system tables mysql.innodb_table_stats and mysql.innodb_index_stats are not present or have unexpected structure. Using transient stats instead.

最佳答案

我能够按照下面概述的 4 个步骤解决问题。

1) 首先,我在 phpmyadmin 中将我的表备份为 sql 导入脚本。

2) 按照下面解决方案链接中的说明,我解决了表空间问题。

3) 然后我再次在 phpmyadmin 中运行 sql 导入脚本/触发器创建脚本来创建、填充表并重新创建触发器。

4) 最后,我测试了一个更新,并让它将更新的记录插入到日志中。

解决方案链接 - WAMP Solution for TableSpace Issue

关于MySQL 触发器 - 更新后插入不触发插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37782237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com