日期:2014-05-16  浏览次数:20697 次

急求!mysql存储过程,多个字段合并后通过一个输出变量参数返回值.
DELIMITER $$
CREATE PROCEDURE login (IN uname VARCHAR(30),IN upwd VARCHAR(32), OUT re_uinfo VARCHAR(50))
BEGIN
SELECT re_uinfo:=concat(user_id,'|',user_name) as uinfo FROM glcity_user WHERE user_name=uname AND user_pwd=upwd AND user_state=1 LIMIT 1;
END;
$$

错误信息:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':=concat(user_id,'|',user_name) as uinfo FROM glcity_user WHERE user_name=uname ' at line 3

------解决方案--------------------
SQL code
mysql> CREATE PROCEDURE login (IN uname VARCHAR(30),IN upwd VARCHAR(32), OUT re_
uinfo VARCHAR(50))
    -> BEGIN
    -> SELECT concat(user_id,'|',user_name) into re_uinfo FROM glcity_user WHERE user_name=uname AND user_pwd=upwd AND user_state=1 LIMIT 1;
    -> END;
    -> $$
Query OK, 0 rows affected (0.42 sec)

mysql>