delete update后要用commit提交就可以了。

解决方案 »

  1.   

    是喔,我也出現這種問題,要commit才算操作完成
      

  2.   

    别忘了用COMMIT;
    否则一关SQLPLUS就会滚掉了
      

  3.   

    楼上说的有些错误,SQl*PlUS在退出时
    将自动提交所有没有提交的操作。
    在SQL*Plus中使用update,delete操作若没有提交,
    那么在其他会话中,是不会有所体现的。
      

  4.   

    hong_flood(洪) 说的有所欠缺,sqlplus在退出时是可以设置是否提交未提交事务的,默认是提交。
      

  5.   

    死掉,可能是表被锁住,
    没有删除,是你没有进行提交,要commit;
    或者设置自动提交,在SQL*Plus中:
    set autocommit on;
      

  6.   

    总结一下吧,
    其实大家说的都很对,你一定是从sybase或sql server转过来来用oracle的,用惯了它们中的隐式提交。
    不过需要注意的是,在oracle中是需要隐式提交的。
    所以,你在做update,insert,delete这些dml语句操作时,一定要显示的在执行命后执行一下commit(提交)或rollback(回滚)。不然当你退出sqlplus时,所做的操作就被回滚了。
    使用了pb来操作数据库还好一点,因当你在做profile配置时,如你不把commit on disconnect去掉,这样你断开时,pb就帮你提交了。