zoukankan      html  css  js  c++  java
  • 一个 SQL 同时验证帐号是否存在、密码是否正确

    出处:http://www.cnblogs.com/jacklondon/archive/2012/01/13/2321686.html近日偶尔看到一个很巧妙的 SQL 技巧,一个简单的 SQL 同时验证帐号是否存在、密码是否正确。之前从未曾想过这么做,也未曾见过别人这么做。虽是奇技淫巧,却真正所谓构思巧妙。如果用来面试考考别人,真的能够难倒一大片兄弟。好东西不敢独享,特公开与大家同乐。



    解释:

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

    b. 如果用户名存在,而密码不正确,则返回 0

    c. 如果用户名存在,而密码正确,则返回 1


    之所以把密码单独用一个表保存,是因为用户的其他信息(用户名、邮件、电话)与密码是两种不同性质的东西,系统架构师决定分开保存,有助于提醒程序员这种差别: 用户的其他信息可以查看,密码不能查看;用户的其他信息更改时可以看到更改前的数据,密码更改时不能看到更改前的数据;修改用户密码与修改用户其他信息,是两个不同页面。虽说程序员普遍有“文人相轻”的毛病(读书人互相瞧不起),但看到这个 SQL,不能不让人佩服。

    作者:wqvbjhc
    出处:https://www.cnblogs.com/wqvbjhc/
    版权:本文版权归作者和博客园共有
    转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
  • 相关阅读:
    BZOJ1058:[ZJOI2007]报表统计(Splay,堆)
    BZOJ3224:普通平衡树(Splay)
    BZOJ3781:小B的询问(莫队)
    21. [HAOI2005] 希望小学 (wa1)
    cogs 2509. 森林大礼包
    libreoj #119. 最短路
    libreoj #514. 「LibreOJ β Round #2」模拟只会猜题意
    cogs 1647. 油田[uva572]
    css的部分应用示例
    html之表格
  • 原文地址:https://www.cnblogs.com/wqvbjhc/p/2465086.html
Copyright © 2011-2022 走看看