case ステートメントを使用して、別の列の値に基づいて列を更新しようとしています。MySQL で「rma」と呼ばれる私のテーブルは次のとおりです。
ID | rma_number | serial_number | ref_status_id
1 | 9898 | 123456 | 19
2 | 7869 | 098768 | 3
これが私のストアドプロシージャです:
CREATE DEFINER=`admin`@`localhost` PROCEDURE `delete_update_rma`(in selectedID int, in selectedRMAID int)
begin
declare rmaStatus int(5);
select ref_status_id into rmaStatus
from rma
where id = selectedRMAID;
case rmaStatus
when 19 then
set ref_status_id = 0;
end case;
delete from dropbox where id = selectedID;
end
プロシージャを作成するために保存しようとすると、エラー #1193 - 不明なシステム変数 'ref_status_id' が表示されます。
ストアド プロシージャの何が問題なのかを特定するのを手伝ってくれる人はいますか?