为什么我在Mysql 中插入一条数据,然后紧接着select刚插入的记录的ID号,怎么select 出来是一个空值???
奇怪啊,
在我的存储过程中,有这么个片断,
insert into imeet.T_User(LoginName,NickName,)values(Login_Name,Nick_Name);
select $UserID = UserID from t_user where LoginName = Login_Name;
结果$UserID 为空值,但是如果我上面的改为select * from t_user where LoginName = Login_Name;
在调用端的dataset中就存在刚才插入的一行数据。
UserID是t_user 表的 primary_key ,并且是auto_increable.
请问我哪里出了问题吗?是不是在Mysql 中不能直接这么得到ID 值?
------解决方案--------------------id作为主键,用函数LAST_INSERT_ID()得到。
------解决方案--------------------select UserID into @UserID from t_user where LoginName = Login_Name;
这样试试,注意 ‘$’ 改为 ‘@’ 了。