本人声明,自己也是个菜鸟,水平有限,只能粗浅的介绍。
1:select方法:
这个最简单
create table table_name as select * from table_name1;
insert into table_name select * from table_name1;
不在同一数据库,并且dblink存在的话可以这样:
create table table_name@dblink_name as select * from table_name1;
insert into table_name@dblink_name select * from table_name1;
如果可以的话,可以多开几个线程:
如:
create or replace procedure datacopy_p(
xcs number, ---线程数
xch number --线程号
)
as
.............
begin
insert into table_name
select * from table_name1
where mod(col_name,:xcs)=:xch;---这个表的某列得支持这个运算啊!要不我也没办法
end;
/
exec datacopy_p(3,0);
exec datacopy_p(3,1);
exec datacopy_p(3,2);
2:copy命令
sql*plus 命令的用法:
copy {from database |to database |from database to database} {append|create|insert|replace}
destination_table [(col1,col2,col3...)}
using query;
append追加,表不存在则创建再追加,create 创建表并添加记录,如果表存在可是要报错的,insert 向已有的表插入记录,表不存在也要报错的,replace用查询出来的数据覆盖目标表的记录,表不存在就创建它。
举个例子说下用法:
copy from user/passwd@sid to user/passwd@sid create dept1 using
select * from dept;
copy from user/passwd@sid create dept1 using
select * from dept;
copy to user/passwd@sid create dept1 using
select * from dept;
3:sqlldr -- exp/imp 方法
这个网上资料很多,我也不想写了,偷点懒,呵呵。
linuxguy 于 2007-06-26 23:43:10发表:
:0L