表数据莫名丢失?请高手帮忙诊断,谢了!!
我的数据是一个业务表中的记录,这个记录会在一个帐务处理的事务中进行处理,处理结束后,系统会根据这条记录写个日志信息。现在的情况是,系统根据这个记录的帐务处理工作正确完成,而且日志信息也可以看出本记录的处理时间,内容等,但是这条原始记录就是找不到了,数据库中根本找不到踪影了。可以确定的是软件本身中没有删除这个记录,而且也不是人员的误操作,最为奇怪的事,我已经在这个表上增加了删除时的触发器,触发器的限制是对于帐务处理后单据不可删除,不管是程序中误删除还是手工删除都会应该都不可执行下去,难道触发器也会失灵?
实在不明白,业务都处理完了的数据,怎么会不见了呢?当然不是所有的都没了,只是一个月总会有2,3条,搞得我很是郁闷,请各位高手分析一下,难道DB2还有什么漏洞不成? 大家给个建议,给个思路,随便说说,或者我的程序可能的漏洞在哪里?
自己顶顶!:em03: :em03: 可能还是和业务处理逻辑有关
备份下,看那一天消失了 没有commit?还是被人后台给你删咯。 如果是一个月的几条丢失,我想应该是应用逻辑有问题。
回复 #4 wolfop 的帖子
虽然不能完全排除,但后台删除的可能性非常小。一定是commit了的,因为与它相关的其他帐务数据都操作正常了,就是这个单据记录不见了。 原帖由 lizhuo 于 2009-9-1 09:36 发表 http://bbs2.chinaunix.net/images/common/back.gif
如果是一个月的几条丢失,我想应该是应用逻辑有问题。
从系统中仔细查过了,delete的语句很有限,而且想来怎么也不应该到可以被delete的地方去呀 可以肯定,这与db2没有关系,你仔细检查你的业务逻辑.
页:
[1]