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;
相关推荐
金伟API10244 小时前
不会写复杂SQL怎么办?
数据库·sql
执笔为剑4 小时前
2.1.2-1、V8R3迁移到V8R6-Oracle兼容特性
数据库
江湖有缘4 小时前
Docker实战 | 使用Docker部署rmoments社交平台
jvm·docker·oracle
geovindu5 小时前
sql:Search-Optimized SQL Queries using mysql 9.0
android·数据库·sql·mysql·数据库开发·数据库架构
for_ever_love__5 小时前
MySQL SELECT 与 WHERE 优化实战:可搜索条件、联合索引与执行计划
数据库·mysql·oracle·select·where·条件优化·查询优化技巧
2501_931803755 小时前
MySQL 锁机制详解
数据库·mysql
Nturmoils5 小时前
SQL 编辑器不只是写查询:我用 KStudio 排查一次订单异常
数据库
IvorySQL6 小时前
PostgreSQL 日报|逻辑解码 DDL 子事务缺陷修复(10 月 12 日)
数据库·postgresql
这个DBA有点耶6 小时前
研发规模/投入最大的国产数据库厂商是谁?拆解五个衡量维度
数据库·程序员·产品
葡萄城技术团队6 小时前
数据库里的数据明明是对的,为什么 BI 报表还是错?
数据库