排查下列MySQL语句的错误以下是定义列的代码value INT UNSIGNED AS questions + answered VIRTUAL;以下是触发器中的代码DECLARE value INT;SELECT value INTO value FROM CommunityMember WHERE member = NEWanswerer AND community = NEWcommuni
错误原因:
- 在定义列的语句中,AS后应该是一个表达式而不是一个子查询;
- 在触发器中,DECLARE语句应该放在BEGIN语句之前。
以下是修改后的代码:
定义列的代码:
value INT UNSIGNED AS (questions + answered) VIRTUAL;
触发器中的代码:
BEGIN
DECLARE v INT;
SELECT value INTO v FROM CommunityMember WHERE member = NEW.answerer AND community = NEW.community;
SET NEW.value = v;
END;
原文地址: http://www.cveoy.top/t/topic/bmis 著作权归作者所有。请勿转载和采集!