我有下面的 SQL 代码:
DELIMITER $$
CREATE PROCEDURE `test`.`new_procedure` (queryString VARCHAR(255))
BEGIN
SELECT @tempValue = COUNT(*) FROM test.userdata_extended WHERE inn LIKE queryString;
IF @tempValue > 0 SELECT * FROM test.userdata_extended WHERE inn LIKE queryString;
END $$
我把COUNT*
结果变成@tempValue
多变的。
然后我尝试比较它是否大于零。
我在比较过程的语句中遇到错误。 MySQL 向我报告UNEXPECTED SELECT SYM
错误。这是什么意思?
这也是对其他表的检查。我需要 IF-ELSE 语句,因为基于多个查询结果,我的过程必须返回准确的代码错误值(可能不同),以便我开发的应用程序处理或提供数据(如果一切正常)。
如何解决这个问题?
Thanks
你已经忘记了THEN
在你的 if 语句中。您需要添加THEN
.
像这样:
IF @tempValue > 0 THEN ...your statement
END IF;
您还忘记添加END IF;
也添加这个。
参考站点在这里 http://dev.mysql.com/doc/refman/5.0/en/if.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)