关于v$sql视图的一些问题,急,请教

jhpu2000 2006-11-22 07:44:43
v$sql视图中的SQL_TEXT字段记录了当前操作的SQL语句,但是,我怎么判断当前语句是否提交?

另外,该视图中的其他字段有哪些相对比较有价值的信息

PS:由于自己的粗心,执行了一个大的错误语句(Update后没有写Where条件,只写了Begin end;),在语句没有执行完毕的时候我发现不对,将PL/SQL进程杀掉了,在v$sql视图中的确记录有该语句,但是我不知道在默认情况下
PS/SQL是否会提交,从v$sql视图中可以分析出来吗?

希望高人指点,数据若真的修改错误,责任就比较重大,会全盘影响局系统运行,起码在明天上班前搞定,十万火急,在线等,谢谢各位了
...全文
106 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
认真读书 2006-11-23
  • 打赏
  • 举报
回复
对。。支持你的感悟
non_smoker 2006-11-23
  • 打赏
  • 举报
回复
楼主不厚道这种问题才20分....
jdsnhan 2006-11-23
  • 打赏
  • 举报
回复
哈哈,起床后散分吧.
jhpu2000 2006-11-23
  • 打赏
  • 举报
回复
可以回家睡觉了
jhpu2000 2006-11-23
  • 打赏
  • 举报
回复
由于数据量过大,暂时是每天凌晨备份的,刚才讲Update的3个表与昨天晚上备份的进行了比较,仔细核对了今天一天的工作量,发现数据没有丢失.

谢天谢地,总算没有commit,要不责任可真的承担不起,后果不堪设想

衷心感谢楼上两位的安慰与鼓励,谢谢!

PS:一点点感悟:
1.修改数据(非select语句),一定要慎之又慎,多花点时间,仔细检查SQL语句,特别是Where后的条件,执行和提交分开(在程序除外,不好控制),最重要的一点是此时要专心(我就是在和别个说话,不小心SQL语句没有写完就按了F8)切记:修改数据要谨慎小心专心
2.项目开发同时建立两个数据库,一个正式库一个测试库,测试库为正式库的一个拷贝,定期复制,包括结构和数据。在项目正式上线后,将正式库与测试库断开,若要操作正式库必须去特定的机房机器才能修改并做好记录日志(前提是程序代码中的SQL语句不能有漏洞,特别是修改数据的语句),开发人员只能连接测试数据库(由于是正式库的拷贝也能满足要求,只是数据稍微滞后)[虽然我们目前测试库与正式库分开,但是开发人员还是可以连接正式库,这样才导致了下午由于我的粗心而引发的闹剧, 很是吓人]
3.DBA这个角色太重要了,数据库这个东西太庞大了,很强大,相应的也很脆弱
sten 2006-11-22
  • 打赏
  • 举报
回复
update是需要commit的,语句也好,界面操作也罢都要
按你说的,楼主你该没有commit才是,所以不用担心
晓马过河 2006-11-22
  • 打赏
  • 举报
回复
假设你的PL/SQL没有commit操作,按照我的理解是不会修改的。

当然保险起见你还是找其他方法仔细确认是否修改以及如何对应的好

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧