特紧急一个问题,恢复UPDATE数据。

fengyecsdn 2008-11-10 06:55:18
我不小心把 一个表的一个字段给UPDATE了。没加够参数

现在用
SELECT * FROM book.users AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '45' minute) where BDid=32065

吧以前的数据取出来 另存了一个表HH在库里

我该如何把这个HH表里的数据批量恢复给原来的表BOOK呢?

谢谢啦
很急啊 别让领导发现! 求
本人数据库刚学 高级SQL不会写

...全文
88 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ocean_958 2008-11-11
  • 打赏
  • 举报
回复
问题知道了就很简单,不知道就复杂。三个臭皮匠赛过诸葛亮。在这里大家伙可以帮你想办法的
fengyecsdn 2008-11-11
  • 打赏
  • 举报
回复
看似简单的一个问题
折腾了我三个小时啊
原表本身有问题的 更新不了 又不在一个用户名下
哎 昨天晚上总算解决了

谢谢各位
codearts 2008-11-10
  • 打赏
  • 举报
回复
update A
set (A.xx1, A.xx2, A.xx3) = (select xxx1, xxx2, xxx3 from HH where A.关联字段 = HH.关联字段)
where exists(
select 1
from HH
where A.关联字段 = HH.关联字段
)
vc555 2008-11-10
  • 打赏
  • 举报
回复
你根据什么字段关联你的源表和HH表?
或者说你如何定位原来UPDATE错误的行?

有了关联字段,你就update就行了阿。这个SQL不难吧。

或者你可以定位到错误的行,那么就把这些行delete删掉,然后再用hh表把相关行插进表中。
fengyecsdn 2008-11-10
  • 打赏
  • 举报
回复
UPDATE 怎么写啊 两个一样结构的表

icss_zhen 2008-11-10
  • 打赏
  • 举报
回复
建意update之间,先备份下要update的表,要不然一出错就更麻烦咯
fengyecsdn 2008-11-10
  • 打赏
  • 举报
回复
楼上请具体说说

另外 我这里已经有一个 HH的表 里边存的是 45分钟前的 数据 是正确的

从这个表里 怎么更新原来的表?
有400多数据
vc555 2008-11-10
  • 打赏
  • 举报
回复
你权限够不够大?用logminer一下就恢复了。
fengyecsdn 2008-11-10
  • 打赏
  • 举报
回复
为什么 我这么写 总也提示 错误呢?
PL是英文的 我也没仔细看 反正是出错了
我要恢复 PASSWORD字段
在MSSQL里是 【】扩起来
但是在PL里 这么写也不成
Andy__Huang 2008-11-10
  • 打赏
  • 举报
回复
要找到原表与被更改表之间的关联字段

udpate 原表 set
原字段=(select 新字段 from book.users AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '45' minute) where BDid=32065 )
where 原表.BDid=xxx

17,377

社区成员

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

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