本地Oracle数据库中我对数据进行了改变,比如删除,添加等。如何将修改的数据更新到服务器上的数据库中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了本地Oracle数据库中我对数据进行了改变,比如删除,添加等。如何将修改的数据更新到服务器上的数据库中相关的知识,希望对你有一定的参考价值。
服务器上存放着和本地数据库中未修改前一样的数据。应如何将本地的数据更改到服务器上的数据库中???就5个财富值,大神拜托了
方法有很多,简单的,脚本进行数据原有数据删除然后新数据插入,第二种,你可以写一个触发器表级别更改,根据你想要的数据结果然后操作 参考技术A 做完这些dml操作后执行 commit;提交了服务器上才会被修改追问
你好,您可不可以具体的讲一下,比如,我对本地数据库中的某一个表增加了一行数据,我想将改变了的这个表的数据更新到服务器上的数据库中,应如何思考处理流程
本回答被提问者采纳 参考技术B 把表导出导入啊误删数据?如何快速恢复Oracle数据库
误删oracle数据库中的数据,在不考虑全库备份和利用归档日志情况,怎样快速恢复数据呢?
下面介绍3种方法。
1. 利用oracle提供的闪回方法进行数据恢复,适用于delete删除方式
首先获取删除数据的时间点:
select * from v$sql where sql_text like '%table_name%' ;
1
根据结果中的sql_text
内容,找到delete
执行语句对应的删除时间点,执行下面语句查询出删除的数据。
select * from table_name as of timestamp to_timestamp(‘删除时间点’,‘yyyy-mm-dd hh24:mi:ss’)
where (删除时的条件)
12
检查数据无误后,执行下面操作,将数据插回原表中。注意主键不重复
insert into table_name
select * from from table_name as of timestamp to_timestamp(‘删除时间点’,‘yyyy-mm-dd hh24:mi:ss’)
where (删除时的条件)
123
2. 利用oracle虚拟回收站功能
原理是因为oracle数据库在删除表时会将删除信息存放于某虚拟回收站中而非直接清空,在此种状态下数据库标记该表的数据库为可以复写,所以在该块未被重新使用前依然可以恢复数据。该方法多用于drop删除。
首先查询user_table
视图,找到被删除的表:
select table_name,dropped from user_tables;
select object_name,original_name,type,droptime from user_recyclebin;
12
注意此时的,object_name
和original_name
就是回收站存放的表名和原来删除的表名,如果表名没有被重新命名,可以通过下面语句进行恢复:
flashback table original_name to before drop;
1
如果不知道源表名,或者需要重新命名新的表名存放数据,则可以通过回收站中的object_name
进行恢复,命令如下:
flashback table object_name to before drop new_table_name;
1
3. 用oracle数据库的闪回功能可以将数据库恢复到过去某一状态
注意,此时是整库恢复,具体语法如下:
SQL>alter database flashback on
SQL>flashback database to scn SCNNO;
SQL>flashback database to timestamp to_timestamp(‘frombyte 2021-09-02 23:59:59’,‘yyyy-mm-dd hh24:mi:ss’);
123
4. 彻底删除数据
如果确定需要删除的数据又不想无谓的占用空间,我们可以使用以下3种方式:
- 采用truncate方式进行截断。(不能进行数据回恢复)
- 在drop时加上purge选项:
drop table table_name purge
- 通过删除
recyclebin
区域来永久性删除表 ,drop table table_name cascade constraints purge table table_name;
5. 关于清空回收站
-
删除当前用户回收站
purge recyclebin;
-
删除全体用户在回收站的数据
purge dba_recyclebin;
以上是关于本地Oracle数据库中我对数据进行了改变,比如删除,添加等。如何将修改的数据更新到服务器上的数据库中的主要内容,如果未能解决你的问题,请参考以下文章
100天精通Oracle-实战系列(第16天)使用 RMAN 备份快速恢复误删数据表