【发布时间】:2015-05-18 09:56:31
【问题描述】:
所以我在 phpmyadmin 中使用 MySQL 触发器。这是我对表 scorm_track 的触发器:
UPDATE userbatch
LEFT JOIN scorm_track
ON
(userbatch.user_id = scorm_track.userid)
LEFT JOIN trainingobject
ON
(scorm_track.tobjid = trainingobject.id)
IF scorm_track.element = 'cmi.core.lesson_status' THEN
SET userbatch.to_completion = scorm_track.value,
userbatch.trainingcompleted = scorm_track.timemodified;
ELSEIF scorm_track.element = 'cmi.core.score.raw' THEN
SET userbatch.comment = scorm_track.value;
ENDIF;
WHERE (userbatch.batch_id = trainingobject.batchid) AND
scorm_track.id=NEW.id AND
scorm_track.element = 'cmi.core.lesson_status' OR scorm_track.element = 'cmi.core.score.raw'
但它显示以下错误:“MySQL 说 #1064 - You have an error in your SQL syntax...”
这个问题是在我添加了 IF ELSE 语句后开始出现的。它以前工作正常。谁能说明为什么会发生这种情况?
【问题讨论】:
标签: php mysql if-statement triggers phpmyadmin