我需要一些mysql触发器的帮助。我目前正在尝试整理一些代码并将一些处理卸载到mysql数据库而不是运行2个查询和连接等...
当有人将视频插入数据库时,我希望更新类别中的视频计数。
所以你指定了类别id。
这就是我到目前为止所以任何帮助都会很好,因为我似乎无法使语法正确。
CREATE TRIGGER 'db_videos'.'update_video_count'
AFTER INSERT ON 'videos' FOR EACH ROW
BEGIN
UPDATE video_cat WHERE video_count = video_count + 1 WHERE video_cat = video_cat;
END;
答案 0 :(得分:2)
您的where子句重复且含糊不清。如果我理解您的数据模型正确,请尝试:
CREATE TRIGGER 'db_videos'.'update_video_count'
AFTER INSERT ON 'videos' FOR EACH ROW
BEGIN
UPDATE video_cat vc
WHERE video_count = video_count + 1
and NEW.video_cat = vc.video_cat;
END;
答案 1 :(得分:1)
尝试以下方法:
CREATE TRIGGER 'db_videos'.'update_video_count'
AFTER INSERT ON 'videos' FOR EACH ROW
BEGIN
UPDATE video_cat vc
SET video_count = video_count + 1
WHERE NEW.video_cat = vc.video_cat;
END;