巧用CASE WHEN 验证用户登录信息

  最近逛博客园的时候偶然看到一个很巧妙的SQL,巧妙利用CASE WHEN 实现一个简单的 SQL 同时验证用户帐号是否存在、密码是否正确。晓菜鸟之前的做法都是根据用户名和密码一起验证,如果验证失败直接提示"用户名或密码错误",不过好像大多数网站都是这么提示的,不给用户提示得非常清楚,只需要让用户知道失败了就行!

好了,废话不多说,直接上代码吧!

 

SELECT CASE WHEN [Pwd]='13955235295b23976' THEN 1 ELSE 0 END as [IsExist]
FROM [User]
WHERE [LoginName] = '晓菜鸟'

 

解释:

1、如果用户名不存在,则查询结果是无数据.

2、如果用户名存在但密码不正确,则查询结果是 0.

3、如果用户名存在且密码正确,则查询结果是 1.

  虽然只是个小技巧,但是成长不正是一点一滴累积起来的吗,晓菜鸟会在系统重构的时候用上这个的,也希望能对大家有用!:)

posted @ 2015-09-29 19:14  晓菜鸟  阅读(556)  评论(0编辑  收藏  举报