我正在尝试制定一个带有参数的程序。但是当我在一个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 被正确填充,但无论我在播放器中输入什么,结果始终是 66。(表有 66 行!)
我究竟做错了什么???
重命名你的参数,
CREATE PROCEDURE p (IN _player TEXT, OUT num INT)
BEGIN
SELECT COUNT(*) INTO num FROM `sg_playerstats` WHERE `player` = _player;
END
你之所以得到这个是因为它碰巧发生了名称冲突。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)