我正在尝试创建一个带参数的过程。但当我在WHERE条件下使用它们时,就好像根本不存在它们一样。它们被简单地忽略了。
DELIMITER //
DROP PROCEDURE IF EXISTS p //
CREATE PROCEDURE p (IN player TEXT, OUT num INT)
BEGIN
SELECT COUNT(*) INTO num FROM `sg_playerstats` WHERE `player` = player;
END
//
DELIMITER ;Num被正确填充,但无论我在player中放入什么,结果总是66。(该表有66行!)
我做错了什么?
发布于 2013-01-25 12:02:57
重命名参数,
CREATE PROCEDURE p (IN _player TEXT, OUT num INT)
BEGIN
SELECT COUNT(*) INTO num FROM `sg_playerstats` WHERE `player` = _player;
END你得到它的原因是因为它碰巧有名称冲突。
https://stackoverflow.com/questions/14515125
复制相似问题