Mysql过程,在where子句中使用参数
我从phpmyadmin创建了这个过程,但它不起作用,我将record_id中的最后一个单词替换为指定的字符串id并工作,但是当我使用参数not working时Mysql过程,在where子句中使用参数,mysql,sql,stored-procedures,Mysql,Sql,Stored Procedures,我从phpmyadmin创建了这个过程,但它不起作用,我将record_id中的最后一个单词替换为指定的字符串id并工作,但是当我使用参数not working时 DROP PROCEDURE `prcd_update_record`; CREATE DEFINER=`root`@`localhost` PROCEDURE `prcd_update_record`( IN `talep_id` VARCHAR(24), IN `vall` INT(10) ) NOT DET
DROP PROCEDURE `prcd_update_record`;
CREATE DEFINER=`root`@`localhost`
PROCEDURE `prcd_update_record`(
IN `talep_id` VARCHAR(24),
IN `vall` INT(10)
)
NOT DETERMINISTIC
MODIFIES SQL DATA SQL
SECURITY INVOKER
UPDATE `talep_malzeme`
SET `kalan_miktar` = vall
WHERE `talep_malzeme`.`id` = talep_id;
我是这样执行的:
SET @p0='33'; SET @p1='57fb7911ea91e9efa'; CALL `prcd_update_record`(@p0, @p1);
希望这对你有帮助
希望这将对您有所帮助。看起来您的参数顺序错误,请重试
CALL `prcd_sevk_toplam`(@p1, @p0);
看起来您的参数顺序错误,请重试
CALL `prcd_sevk_toplam`(@p1, @p0);
您应该根据参数定义为参数提供适当的值。您的过程接受如下参数
PROCEDURE `prcd_sevk_toplam`(
IN `talep_id` VARCHAR(24),
IN `vall` INT(10)
您正在将它们都设置为varchar
。这可能是这里的问题。您应该将它们设置为
SET @p0=33;
SET @p1='57fb7911ea91e9efa';
CALL `prcd_sevk_toplam`(@p1, @p0);
您应该根据参数定义为参数提供适当的值。您的过程接受如下参数
PROCEDURE `prcd_sevk_toplam`(
IN `talep_id` VARCHAR(24),
IN `vall` INT(10)
您正在将它们都设置为varchar
。这可能是这里的问题。您应该将它们设置为
SET @p0=33;
SET @p1='57fb7911ea91e9efa';
CALL `prcd_sevk_toplam`(@p1, @p0);
你犯了什么错误?添加您得到的错误您得到的错误是什么?添加您得到的错误