求达人给解释一下=,:=,select into的区别
mysql菜鸟。刚写存储过程练手。代码如下:
CREATE DEFINER=`root`@`localhost` PROCEDURE `CheckIsUserLogin`(UserName_INPUT varchar(20),UserPass_INPUT varchar(50))
begin
DECLARE ID_Temp int;
SET ID_Temp:=0;
SELECT ID_Temp=ID FROM `Users` WHERE UserName=UserName_INPUT AND UserPass=UserPass_INPUT;
select IF(ID_Temp>0,1,0);
end;
CPU瞬间顶满不执行不报错
后各种百度把SELECT语句改为:
SELECT ID INTO ID_Temp FROM `Users` WHERE UserName=UserName_INPUT AND UserPass=UserPass_INPUT;
后出正确结果
但是概念比较模糊,不了解=,:=和select into的区别,百度无果,求助各位大侠指点迷津,谢谢~
仔细看看我的代码,找找区别
SELECT @ID_Temp:=ID FROM `Users` WHERE UserName=UserName_INPUT AND UserPass=UserPass_INPUT;
OR
SELECT ID INTO ID_Temp FROM `Users` WHERE UserName=UserName_INPUT AND UserPass=UserPass_INPUT;
探讨
引用:
而且在执行procedure的时候会有打印相对于的变量值 一直执行的时间。
打印相对于的变量值 一直执行的时间。
这是啥意思啊
引用 SELECT ID_Temp=ID FROM `Users` WHERE UserName=UserName_INPUT AND UserPass=UserPass_INPUT;