在重复键上 - 更新多个表

时间:2011-12-23 06:00:18

标签: mysql

如何使用插入更新多个表?我在这里尝试的是行不通的。另外,如何使用投票变量和现有v.weight之间的差异来加/减 u.score

INSERT INTO votes (userid, publication_id, weight) VALUES (1,2,3)
            ON DUPLICATE KEY 
              UPDATE votes v, users u


            SET v.weight=1
              WHERE v.userid=1
              --TODO: update u.score

1 个答案:

答案 0 :(得分:2)

听起来你可能想要使用触发器:

http://dev.mysql.com/doc/refman/5.0/en/triggers.html

或者,您可以将初始插入,逻辑和任何后续插入封装到存储过程中:

http://dev.mysql.com/doc/refman/5.0/en/stored-routines.html