MySQLの手順は次のとおりです。
CREATE DEFINER = `root`@`%` PROCEDURE `NewProc`(IN comp_id VARCHAR(40))
BEGIN
...
UPDATE tbl_complaint SET DIDM_Docket_No = '2013-12-12' WHERE Comp_ID = comp_id;
END;
これは、プロシージャを呼び出すと次のようになります。
call gen_docketno('{74651651-9D76-C973-175A-97B9B78608A5}')
プロシージャが適切に更新できないのは、パラメーターの値に括弧とダッシュが含まれているためですか? これをSQLクエリで実行すると機能しますが、ストアドプロシージャでは機能しないためです。
UPDATE tbl_complaint SET DIDM_Docket_No = '2013-12-12' WHERE Comp_ID = '{BF16E293-6CD2-8BC3-91B1-CF5AC70A090B}';
誰かがこの問題を解決する方法を教えてもらえますか?