由索引引发的奇怪的无效条件问题

原创 2006年06月01日 09:34:00

问题背景:昨天下班时,跟踪程序,突然发现一个奇怪的问题,相同的数据使用like能查到,而使用=就查询不到。比如

select * from emp where empno = 123;  查询不到数据,但是通过名字查询数据,该123数据的确存在。查询条件换成

select * from emp where empno like 123; 后,可以查询到数据,原以为是数据的问题,拷贝出来后,发现数据并没有问题,没有奇怪的字符存在。随后在这条记录上执行了多种操作,都比较奇怪,最后更新empno字段的时候,突然发现更新不上去,数据库报错,对象ID XXX 出错。这下终于找到了问题所在,赶紧查询user_object.object_id,发现这个对象是一个索引,这个索引正好包含empno字段。重建索引后,问题消失。

问题分析:因为中午突然停电,而数据库正在处理emp这个表,很可能突然断电对索引造成了影响。这个问题在需要维护索引的时候暴露出来了,而在正常查询利用到索引时,Oracle没有报错。

问题感谢:感谢俺老婆在这个问题解决过程中起到的关键作用 :)

版权声明:本文为博主原创文章,未经博主允许不得转载。

try-catch-finally 引发的奇怪问题

今天,发现我们的一个Windows Service无法正常停止,无奈之下只能杀了进程。 为了找到原因,我在本地进行调试,发现程序里用到了多线程,而代码正是卡在了workThread.Abort()语句...
  • feiyun0112
  • feiyun0112
  • 2013年09月30日 12:24
  • 1055

Validform_v5.3.2引发的奇怪问题

在一个项目中使用Validform作为表单验证插件,话说,这个插件真的是超级方便,只需要在html代码里面添加属性就能够快速实现表单验证,说实话,这个框架用的不是很熟练,最近也一直在学习。但是昨天用的...
  • pang9998
  • pang9998
  • 2017年08月05日 09:23
  • 240

memcpy引发的C常见指针问题

前段时间调bug,定位了一个字符串赋值的错误,偶然发现了一个有趣的现象,于是乎抽象出一个特定的场景,把问题扩展开来,分析了一个由memcpy函数引发的c常见指针问题和勿用,形成了本篇流水账。 ...
  • zz460833359
  • zz460833359
  • 2015年08月28日 23:02
  • 492

VS2005奇怪的断点无效问题

最近一工程中,在调试的时候,有些cpp文件都可以设置断点并且跟进去,但是有一个cpp文件总是不能设置断点,提示“当前不会命中断点。源代码与原始版本不同。” 重新更换过n次文件都不起作用,然后在gool...
  • qq_23992597
  • qq_23992597
  • 2016年08月26日 17:54
  • 287

奇怪的分式Java

问题:上小学的时候,小明经常自己发明新算法。一次,老师出的题目是: 1/4 乘以 8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png) ...
  • qw963895582
  • qw963895582
  • 2016年03月04日 10:20
  • 356

SQL SERVER下非聚集索引引发的死锁问题

最近一个消息发送功能在测试的过程中遇到了因为非聚集索引引发的死锁问题,下面是小伙伴事后总结的内容,现分享出来。(因为一些内容涉及到公司信息,所以只分享了其中部分内容,但是应该不影响整体阅读)情景介绍表...
  • Knight_hf
  • Knight_hf
  • 2017年01月06日 10:29
  • 612

蓝桥杯_C语言_本科B——奇怪的分式

标题:奇怪的分式上小学的时候,小明经常自己发明新算法。一次,老师出的题目是:1/4 乘以 8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png)老师刚想批评他,转念...
  • coderALEX
  • coderALEX
  • 2016年11月17日 21:12
  • 798

从索引技术谈数据库查询索引建立和查询条件书写

索引的优势当然是提高检索速度,但并不是说数据库建立了索引就真的会提高检索速度.为什么呢? 我们知道,索引本身是有序的,索引查找的时候一般是多分查找,(当然在内存用数组实现的索引则可以做到随机查找,但...
  • congcongsuiyue
  • congcongsuiyue
  • 2015年01月27日 14:05
  • 514

连号区间数 小明这些天一直在思考这样一个奇怪而有趣的问题:

package org.bluebridge.topics; /* * 连号区间数 小明这些天一直在思考这样一个奇怪而有趣的问题: 在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间...
  • u013091087
  • u013091087
  • 2015年02月12日 12:46
  • 741

Mysql有效索引和无效索引的介绍

Mysql有效索引和无效索引的介绍 标签: Mysql 索引 内容转自前往 1.索引可能失效的场景 1.WHERE字句的查询条件里有不等于号(WHERE column!=…...
  • z69183787
  • z69183787
  • 2015年07月02日 21:50
  • 2068
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:由索引引发的奇怪的无效条件问题
举报原因:
原因补充:

(最多只允许输入30个字)