mysql - 我的基本 mysql 触发语句一直失败

标签 mysql sql

出于某种原因,mysql 中的这段代码不起作用。

CREATE TRIGGER todays_plays BEFORE INSERT ON Games.`Plays`
FOR EACH ROW
    INSERT INTO `TodaysPlays` TodaysPlays + 1;

编辑:

Table:Games
|Plays|TodaysPlays|                                                           

|  1  |    0      |

这是一个名为 Games 的表,我希望 TodaysPlays 也随着播放次数的增加而增加

我添加的这个新代码可以工作,但不针对游戏,而是针对整个桌面游戏。

DELIMITER $$

CREATE TRIGGER todays_plays BEFORE INSERT ON Games
FOR EACH ROW
BEGIN
    SET NEW.TodaysPlays = TodaysPlays + 1;
END;$$

DELIMITER ;

编辑;

我有一个事件,今天的播放次数每天都会重置为 0,我希望这样当播放次数更新为 1 时,今天的播放次数也会执行相同的操作,但是此代码不起作用,有人可以帮忙吗?

在这个例子中,他们都在同一张 table 上,请有人告诉我当他们来自不同的 table 时该怎么做,这样我就可以一石二鸟了。

总而言之,我想要 1 个(如果您觉得慷慨的话,则需要 2 个)基本触发语句。

感谢您的帮助。

最佳答案

指南:

DELIMITER $$
CREATE TRIGGER todays_plays
AFTER INSERT ON Games FOR EACH ROW
begin

//SAMPLE GUIDE CODE
///INSERT INTO TABLENAMEHRE (FIELD1,FIELD2) VALUES(NEW.VALUE1,NEW.VALUE2);



END;
$$
DELIMITER ;

否则,如果你想用它自己的表(表名称为 Games)进行修改,那么:

DELIMITER $$
CREATE TRIGGER todays_plays
AFTER INSERT ON Games FOR EACH ROW
begin

//SAMPLE GUIDE CODE
///NEW.VALUE1 = NEW.VALUE1 + 1


END;
$$
DELIMITER ;

关于mysql - 我的基本 mysql 触发语句一直失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47192924/

相关文章:

php - 将 While 语句的结果放入 PHP 中的变量中

java - 如何将 ResulSet 的多个值放入 Java 对象中

sql - 如何从表中查找特定列?

java - 将日期字符串数组上传到 oracle

sql - 数据库恢复因移动而失败

mysql - On 子句中的未知列(但确实存在)

mysql - SQL递归插入

MySQL 从同一张表中获取链接结果

mysql - 为什么 count(*) 不能正常工作?

mysql - 将表 INT 值从有符号执行更改为无符号执行