如何把oracle一个用户的部分数据同步到另一个用户

如何把oracle一个用户的部分表中的数据同步到另一个用户
这两个用户是在同一个数据库上面

用copy吧,简单明了。

句法如下:
COPY {FROM database | TO database
| FROM database TO database}

destination_table [(column, column, column, ...)]
USING query

例子:
copy from scott/tiger@lsj to scott/tiger@lsj create dept1 using select * from dept;

分部分来解释一下:
From Database – 源数据库。
To Database – 目标数据库。
此处注意花括号中有三种可选的写法(以”|”隔开),如果源数据表和目标数据表在同一个Schema中,则可以只写From Database,也可以只写To Database,当然还可以是第三种写法,把From Database和To Database写全。但如果源数据表和目标数据表不在同一个Schema中,则必须用第三种写法,即把From Database和To Database都写全,格式相同:USERID/PASSWORD@SID。

– 声明操作数据的方式

Append – 向已有的目标表中追加记录,如果目标表不存在,自动创建,这种情况下和Create等效。

Create – 创建目标表并且向其中追加记录,如果目标表已经存在,则会返回错误。

Insert – 向已有的目标表中插入记录,与Append不同的是,如果目标表不存在,不自动创建而是返回错误。

Replace – 用查询出来的数据覆盖已有的目标表中的数据,如果目标表不存在,自动创建。

destination_table – 目标表的名字

[(column, column, column, ...)] – 可以指定目标表中列的名字,如果不指定,则自动使用Query中的列名。

USING query – 查询语句,交流的数据来自这儿。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-08-10
推荐用expdp/impdp的方法,这样不但可以复制数据,还能复制索引和统计数据等等。

不推荐用物化视图,如果用物化视图,当物化视图刷新的时候你会丢失你对数据的修改。本回答被网友采纳
第2个回答  2010-11-09
如果另一个用户只需要读的话,考虑用VIEW,
如果需要同步过去还有修改的话,考虑用MV,
相似回答