oracle的update语句where条件后的索引字段为空时不执行

问题描述:

update 表名 set age ='23' where id=1 and name='lili';

当在oracle执行以上sql时执行成功,但是当传入的name为null时,sql不成立。我的表中id和name是联合唯一索引,以为name不会为空,但实际上name可以为空,且为空时,不能为=,而是is,即sql为

sql 复制代码
update 表名 set age ='23' where id=1 and name is null;

而不是

sql 复制代码
update 表名 set age ='23' where id=1 and name=null;
相关推荐
全栈测试笔记1 小时前
异步函数与异步生成器
linux·服务器·前端·数据库·python
Lee_SmallNorth1 小时前
变态需求之【角色不同访问数据库的用户不同】
java·开发语言·数据库
李慕婉学姐1 小时前
Springboot连锁火锅管理及预测系统sh5s1gn1(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
dishugj1 小时前
【oracle】19c集群巡检问题
数据库·oracle
知识分享小能手1 小时前
Oracle 19c入门学习教程,从入门到精通,Oracle 其他数据对象 —— 语法详解与综合实践(11)
数据库·学习·oracle
木风小助理1 小时前
JavaStreamAPI的性能审视,优雅语法背后的隐形成本与优化实践
java·前端·数据库
Knight_AL1 小时前
MySQL InnoDB 锁机制深度解析:行锁、表锁、间隙锁、临键锁(Next-Key Lock)
数据库·mysql
良策金宝AI2 小时前
工程设计企业AI试用落地路径:从效率验证到知识沉淀
数据库·人工智能·知识图谱·ai助手·工程设计
panzer_maus2 小时前
Redis的简单介绍(2)-处理过期Key的策略
数据库·redis·缓存
仗剑恬雅人2 小时前
LINUX数据库高频常用命令
linux·运维·服务器·数据库·ssh·运维开发