Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL触发器-在表1中插入时更新表2_Mysql_Sql_Triggers_Sql Insert - Fatal编程技术网

MySQL触发器-在表1中插入时更新表2

MySQL触发器-在表1中插入时更新表2,mysql,sql,triggers,sql-insert,Mysql,Sql,Triggers,Sql Insert,我想做的是向用户帐户添加一些信用(用户信用的10%),每个第三、第六、第九和第十二(不是更多)用户都添加到该用户的邀请链接下的数据库中(但邀请链接在这里不是必需的-每个用户都有索引列和其邀请者的ID) 类似这样的事情(很抱歉“伪代码”,我从来没有使用过触发器,而且可能很快也不会使用,所以我不知道如何正确地编写它): 或者有没有更简单的方法?我可以处理PHP,但我认为脚本只能在用户访问站点时执行…考虑使用触发器 谢谢你的回答!最后,我意识到我不需要在数据库级别执行此操作,并通过PHP解决了此问题。

我想做的是向用户帐户添加一些信用(用户信用的10%),每个第三、第六、第九和第十二(不是更多)用户都添加到该用户的邀请链接下的数据库中(但邀请链接在这里不是必需的-每个用户都有索引列和其邀请者的ID)

类似这样的事情(很抱歉“伪代码”,我从来没有使用过触发器,而且可能很快也不会使用,所以我不知道如何正确地编写它):

或者有没有更简单的方法?我可以处理PHP,但我认为脚本只能在用户访问站点时执行…

考虑使用触发器


谢谢你的回答!最后,我意识到我不需要在数据库级别执行此操作,并通过PHP解决了此问题。只是在处理用户注册的函数末尾添加了一些sql查询。但是你的回答给了我一些关于触发器的见解…这可能很方便。
UPDATE accounts.credit = accounts.credit + (accounts.credit/10)
ON INSERT INTO users (AND when inserted row % 3 == 0 to some user)
WHERE k_user = this
delimiter $$
CREATE TRIGGER upd_check AFTER INSERT ON users
       FOR EACH ROW
       BEGIN
           IF NEW.id % 3 = 0 THEN
               UPDATE accounts SET credit = credit + (credit / 10) where k_user = NEW.id
           END IF;
       END;$$
delimiter ;