Mysql 触发器执行 INSERT 而不是 UPDATE

标签 mysql insert triggers

我想在 MySQL 表中实现一个基本的版本控制系统。让我们想象一个包含 2 列的简单表格:名称 (pk) 和价格。我以为我会简单地添加一个“版本”列并将其添加到主键。然后我会捕获所有更新并执行插入,增加版本号。

首先,这可能吗?我可以在 UPDATE 之前创建触发器并插入并取消 UPDATE 吗?语法是什么? 第二,这个想法可以吗?你将如何实现这一目标?

谢谢你的帮助, 巴特

最佳答案

您无法取消更新。我会将带有版本的表与“主”表分开,并在更新主表时将新记录插入到该表中。或者更简单 - 使用带有新版本号的插入而不是没有任何触发器的更新。

关于Mysql 触发器执行 INSERT 而不是 UPDATE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3573172/

相关文章:

php - Codeigniter - 显示有条件的数字

mysql - 基于具有值替换的两个表创建 View

mysql - mySQL 中特定字段更新时触发

mysql - 插入后获取mysql的最后一个插入id

date - 如何在 HIVE 中的连续日期之间插入行数据?

google-apps-script - Google Sheets onEdit 在不同列的工作表之间移动行

php - mysql插入后如何最好地访问警报数据

php - 简单的 Select 语句不能使用 PDO

ubuntu - 如何在ubuntu 14.04 LTS中导入sql数据库文件?

mysql - "Insert if doesn' t 在 post_meta 表 WP 中存在 "only for product type = ' 产品