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;
相关推荐
知识分享小能手几秒前
MongoDB入门学习教程,从入门到精通,MongoDB的分片管理(17)
数据库·学习·mongodb
木下~learning3 分钟前
MySQL 从入门到精通:安装、终端操作、远程连接与 C 语言 API 全教程
c语言·数据库·mysql
不会写DN3 分钟前
如何设计应用层 ACK 来补充 TCP 的不足?
开发语言·网络·数据库·网络协议·tcp/ip·golang
升职佳兴5 分钟前
告别套娃式子查询:SQL WITH 语句(CTE)深度实战指南
数据库·sql
zzh08117 分钟前
PG数据库日常应用
数据库·oracle
阿维的博客日记17 分钟前
MySQL中type字段解析
数据库·mysql
Trouvaille ~20 分钟前
【MySQL篇】表的操作:数据的容器
linux·数据库·mysql·oracle·xshell·ddl·表的操作
黑牛儿22 分钟前
从0开始实现Mysql主从配置实战
服务器·数据库·后端·mysql
爱学习的小囧29 分钟前
vSphere 9.0 API 实操教程 —— 轻松检索 vGPU 与 DirectPath 配置文件
linux·运维·服务器·网络·数据库·esxi·vmware
麦聪聊数据31 分钟前
数据库安全与运维管控(一):MySQL、PG与Oracle原生审计机制对比
运维·数据库·mysql·oracle