私は次のようなストアドプロシージャを書きました:
DELIMITER $$
CREATE PROCEDURE searchByTerm(term VARCHAR(300))
BEGIN
SET @statment = "Select name,description from products where name like '%?%' OR description like '%?%'";
PREPARE stmt FROM @statment;
SET @a = term;
SET @b = term;
EXECUTE stmt USING @a,@b;
DEALLOCATE PREPARE stmt;
END$$
それを次のように呼び出します:
CALL searchByTerm('xyz');
次のエラーが発生します。
Error Code : 1210
Incorrect arguments to EXECUTE
私は何か間違ったことをしていますか?concat ステートメントで実行できることはわかっていますが、なぜこのように機能しないのですか? 同じパラメーターを複数回使用することはできませんか? 助けてくれてありがとう..