mysql的参数赋值语句必须是只能够选出一行(包括存储过程),
SELECT username,nickname INTO Ausername,Anickname FROM userbase WHERE userid = userid LIMIT 1 ;
这样的语句必须要加上limit 1才可以否则报Result consisted of more than one row错误。
另外,这种赋值语句还有个规矩就是参数名和字段名不能冲突,不然能够执行过去,但是却没有给参数赋值,这是个很隐性的错误,可以参考手册上的:
重要: SQL变量名不能和列名一样。如果SELECT ... INTO这样的SQL语句包含一个对列的参考,并包含一个与列相同名字的局部变量,MySQL当前把参考解释为一个变量的名字。