坑爹的commit

初学oracle,在摸索中前进。

oracle中真的有很多细节需要注意,就像我今天下午遇到的两个问题:

  1.同一条语句,在两个不同的窗体执行显示不同的结果,郁闷死了,明明有一个结果是错误的(这个错误是通过肉眼对表内数据的判断得出的),但是多次执行,还是这个错误,最后请教高数,一听问题,立刻给出结果:“肯定在执行insert/delete/update时,没有commit”,看来做这一行,多练习是一方面,经验同样很重要。

  2.一个存储过程执行报错“找不到数据”,但是表中肯定有这条数据,然后群上请教大家,大家给出了几种可能,尝试无果,后来一网友说,这个过程在我电脑上执行正确,没问题的。蒙了...最后主句调试,一一排查,insert语句没有执行commit,无数据提交!

 

  本来一挺简单的问题,自己却找不到错误在哪,从各方面排查、调试,甚至有些恼怒(执行结果不一那个错误),最后找出症结,原来是一个较小却非常严重的错误"commit”,真是哭笑不得~~

  希望朋友们引以为戒,在执行insert、delete、update等一类DML语句时,记得提交事务,使事务中执行的变更永久化,所有事务的更改都将为其他事务可见。

转载于:https://www.cnblogs.com/zyyttkx/archive/2012/04/23/2466662.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值