mysql触发器跨服务器存储过程_mysql – 从触发器调用存储过程

我使用以下语法在

mysql中创建了一个存储过程.

DROP PROCEDURE IF EXISTS `sp-set_comment_count`;

DELIMITER $$

CREATE PROCEDURE `sp_set-comment_count` (IN _id INT)

BEGIN

-- AC - AllCount

DECLARE AC INT DEFAULT 0;

SELECT COUNT(*) AS ac

INTO AC

FROM usergroups AS ug

LEFT JOIN usergroup_comments AS ugm ON ugm.`gid` = ug.`id`

LEFT JOIN mediagallery AS dm ON ugm.mid = dm.`id`

WHERE dm.`status` NOT IN (200, 201, 202, 203, 204, 205)

AND ug.`id` = _id;

UPDATE usergroups

SET allCount = AC,

WHERE usergroups.`id` = _id;

END $$

DELIMITER ;

仅供参考我已经大大简化了存储过程,但我知道它的工作没有任何问题.

我希望能够做的是从usergroup_comments设置一个触发器,就像这样工作.

DROP TRIGGER IF EXISTS `usergroups_comments_insert`

CREATE TRIGGER `usergroups_comments_insert` AFTER INSERT ON `usergroups_comment`

FOR EACH ROW

BEGIN

CALL sp-set-comment_count(NEW.`gid`);

END;

但由于某些原因,每次我做mysql时都会向我抛出一个错误,这个错误不足以说明第4行有语法错误.

我已经梳理了mysql文档并找到了一些关于触发器限制的信息,但发现它相当令人费解.

任何想法都会有所帮助.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值