Я пытаюсь создать процедуру для обновления строки, когда ошибка исправлена.Вот как это выглядит:
DELIMITER $$
CREATE PROCEDURE bugFix (
IN rid_in INT,
IN fix_details_in VARCHAR (300)
) BEGIN
SET @resolved_qry = CONCAT('UPDATE _bug_report SET resolved = 1 WHERE rid = ', rid_in);
PREPARE stmt FROM @resolved_qry;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
UPDATE _bug_report SET fix_details = CONCAT(fix_details, fix_details_in) WHERE rid = CONCAT(rid, rid_in);
END $$
DELIMITER ;
При изменении разрешенного типа на 1:
SET @resolved_qry = CONCAT('UPDATE _bug_report SET resolved = 1 WHERE rid = ', rid_in);
PREPARE stmt FROM @resolved_qry;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
Работает нормально, однако при обновлении столбца fix_details
для включения подробностейне работает:
UPDATE _bug_report SET fix_details = CONCAT(fix_details, fix_details_in) WHERE rid = CONCAT(rid, rid_in);
Вот как я это называю:
CALL bugFix(1, 'Hey, we fixed it');
Есть идеи, как это сделать, чтобы использовать значение fix_details_in
?