oracle中使用下述(CTAS)会受到non-long数据类型的限制,并且可能出现撤销段的超出。
create table tablename as select
这种情况下可以使用copy命令:
用法: COPY FROM <db> TO <db> <opt> <table> {(<cols>)} USING <sel> <db> : 数据库字符串, 例如, hr/your_password@d:chicago-mktg <opt> : 下列关键字之一: APPEND, CREATE, INSERT 或 REPLACE <table>: 目标表名称 <cols> : 用逗号分隔的目标列别名列表 <sel> : 任何有效的 SQL SELECT 语句 缺少的 FROM 或 TO 子句使用当前的 SQL*Plus 连接
/* 从主数据库创建从数据库不存在的表 */
copy from orcl/orcl@192.168.1.63:1521:orclmain create pkginfo using
select * from pricing_package;
/* 同步主数据库中的某条记录到从数据库 */
copy from tcms/tcms@192.168.80.2:1521/orclmain to
tcms/tcms@192.168.80.2:1521/orclsla insert pkginfo using select *
from pricing_package where id=1;
例如:可以使用下述语句创建表或者同步某条数据
注:TO 默认数据库为本地数据库,或者说当前登陆的数据库。