文档章节

SQL-- or与and的混合使用

求是科技
 求是科技
发布于 2015/10/16 18:19
字数 237
阅读 935
收藏 5

需求分析

用户可以用手机号码 或 邮箱名 +新旧密码 来修改该账号的密码

我写的SQL如下

update t_user set
        PASSWORD = #{newPassword}
where
         PHONE_NUM = #{loginInfo}
or
          EMAIL = #{loginInfo}
AND
          t_user.PASSWORD = #{oldPassword}

上述SQL的本意是:用户输入的账号(手机号码或者邮箱名)与密码同时正确时,便可修改该账号的密码。

结果,测试过程中发现,or后面的AND条件好像不起作用,换句话中,无论旧密码输入什么,整体修改密码功能都能成功。

网上搜索一下,现改成如下,可以满足需求。来不及思考原因,大致推测下,是由于or在AND前面引起的,先记录下来,以后找时间将这个弄懂。

update t_user set
            PASSWORD = #{newPassword}
 where
            t_user.PASSWORD = #{oldPassword}
 AND
            PHONE_NUM = #{loginInfo}
or
            EMAIL = #{loginInfo}


© 著作权归作者所有

共有 人打赏支持
上一篇: SQL --分支取数据
下一篇: Java --发送邮件
求是科技
粉丝 91
博文 439
码字总数 226317
作品 0
成都
后端工程师
私信 提问
加载中

评论(1)

jiao1990
jiao1990
正常情况,and优先级高,我建议用括号,易读。
Windows身份验证模式和混合模式的区别

某日,A君问起Windows身份验证模式和混合模式验证的区别与优缺时,根据安全性的考虑,按照到了此文作为参考,学习下~ 在安装过程中,必须为数据库引擎选择身份验证模式。 可供选择的模式有两...

Cnlouds
2013/10/30
0
0
混合云备份SQL Server

数据库作为企业的重要资产,数据备份必不可少。混合云备份推出的备份工作流功能作为备份数据库上云的一种解决方案,使用简单,备份可靠,并且可以订制各种数据库的备份。接下来我们以SQL Ser...

owen_zzh_abao
12/05
0
0
Spring Boot [集成-MyBatis]

导读: 在上篇文章中我们介绍了spring-data-jpa的一些常用方法,在这篇文章中我们在介绍关于mybatis与Spring Boot 的集成,及一些常用方法 集成: 这里有两种方式,一种是常规的Spring 应用的...

yangrd
08/27
0
0
SQL Server 2016新亮点全揭秘

  【IT168 资讯】微软即将在6月1号发布的SQL Server 2016可以为数据提供更好的安全性,并且能够支持混合云,能够查询非结构化的数据源。   很多企业发现在他们的数据库里有很大一部分的数...

it168网站
2016/05/18
0
0
Confluence 6 安装 SQL Server

如果你还没有在安装可以连接的 Microsoft SQL Server 数据库,请先下载后进行安装。请参考 MSDN 上 Installation for SQL Server 的指南。 有关授权模式的说明... SQL Server 允许有 2 种的授...

honeymose
05/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

http协议请求头的意义

GET /day31_Http_306/index.jsp HTTP/1.1: GET请求,请求服务器路径为/hello/index.jsp,协议为1.1 请求头 1.Host:localhost:请求的主机名为localhost2.User-Agent:Mozilla/5.0(Windows NT......

潇潇程序缘
35分钟前
6
0
Netty 简单服务器 (三)

经过对Netty的基础认识,设计模型的初步了解,来写个测试,试试手感 上篇也说到官方推荐我们使用主从线程池模型,那就选择这个模型进行操作 需要操作的步骤: 需要构建两个主从线程组 写一个服务器...

_大侠__
46分钟前
8
0
day02:管道符、shell及环境变量

1、管道符:"|" 用于将前一个指令的输出作为后一个指令的输入,且管道符后面跟的是命令(针对文档的操作):cat less head tail grep cut sort wc uniq tee tr split sed awk等) [root@localho...

芬野de博客
56分钟前
15
0
Kubernetes系列——Kubernetes 组件、对象(二)

一、Kubernetes 组件 介绍了Kubernetes集群所需的各种二进制组件。 Master 组件 Master组件提供集群的管理控制中心。Master组件可以在集群中任何节点上运行。但是为了简单起见,通常在一...

吴伟祥
今天
17
0
Flink-数据流编程模型

1、抽象等级 Flink提供了不同级别的抽象来开发流/批处理应用程序。 1) 低层级的抽象 最低层次的抽象仅仅提供有状态流。它通过Process函数嵌入到DataStream API中。它允许用户自由地处理来自一...

liwei2000
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部