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;
相关推荐
重生的黑客4 分钟前
Git 本地版本管理与分支管理:从零理解工作区、回退、冲突与开发流程
数据库·git·elasticsearch
就叫_这个吧8 小时前
Redis从基础命令到核心机制简单介绍
数据库·redis·缓存
dear_bi_MyOnly8 小时前
【MyBatis 操作数据库】
java·数据库·学习·mybatis·学习方法
DBA_G9 小时前
南大通用GBase 8s数据库新存储引擎核心能力二
数据库·微服务·架构
衣乌安、11 小时前
数据库事务原理与回滚机制
数据库
CodexDave12 小时前
PostgreSQL 明明有索引却选了 Nested Loop:从行数误判修正执行计划
数据库·postgresql·执行计划·扩展统计·nestedloop
czhaii13 小时前
STC ai助手单片机工程项目创建实例
数据库·mongodb
山峰哥13 小时前
数据库性能救星:Explain执行计划深度拆解
服务器·开发语言·数据库·sql·启发式算法
oradh14 小时前
Oracle 11g rac IP地址修改(public ip、vip、scan ip、priviate ip)
数据库·tcp/ip·oracle·rac ip地址修改
YOU OU14 小时前
Redis哨兵 & 集群
数据库·redis·sentinel