欢迎光临本地信息咨询网
详情描述

1. 使用 CREATE TABLE AS SELECT (CTAS)

最常用的表复制方法,复制表结构和数据:

-- 复制表结构和所有数据
CREATE TABLE new_table AS SELECT * FROM original_table;

-- 复制表结构并筛选数据
CREATE TABLE new_table AS 
SELECT * FROM original_table WHERE condition;

-- 复制部分列
CREATE TABLE new_table AS 
SELECT col1, col2, col3 FROM original_table;

-- 复制空表(仅结构)
CREATE TABLE new_table AS 
SELECT * FROM original_table WHERE 1=0;

2. 通过工具界面复制

使用 SQL Developer 图形界面:

在左侧连接窗口中右键点击源表 选择 "复制" → "复制到..." 选择目标连接和方案 可以选择:
  • 仅结构
  • 结构和数据
  • 仅数据(目标表需已存在)
点击 "应用" 完成复制

3. 导出/导入方法

使用导出工具:

右键表 → 导出 选择导出格式(SQL、CSV、Excel等) 设置导出选项 在目标数据库执行导出的 SQL 文件

快速导出数据:

-- 生成插入语句
SELECT 'INSERT INTO new_table VALUES (' 
       || col1 || ', ' || col2 || ', ...' || ');'
FROM original_table;

4. 复制到不同用户/方案

-- 复制到其他用户的方案
CREATE TABLE other_user.new_table AS 
SELECT * FROM current_user.original_table;

-- 需要相应权限
GRANT SELECT ON original_table TO other_user;

5. 高级复制选项

-- 复制表结构包括约束、索引等
BEGIN
  DBMS_METADATA.SET_TRANSFORM_PARAM(
    DBMS_METADATA.SESSION_TRANSFORM,
    'SQLTERMINATOR', TRUE);

  SELECT DBMS_METADATA.GET_DDL('TABLE', 'ORIGINAL_TABLE')
  INTO :ddl FROM DUAL;

  EXECUTE IMMEDIATE :ddl;
END;
/

-- 使用 DBMS_REDEFINITION 在线重定义(大型表)
BEGIN
  DBMS_REDEFINITION.CAN_REDEF_TABLE('USER', 'ORIGINAL_TABLE');
  DBMS_REDEFINITION.START_REDEF_TABLE(
    uname => 'USER',
    orig_table => 'ORIGINAL_TABLE',
    int_table => 'INTERIM_TABLE');
  DBMS_REDEFINITION.FINISH_REDEF_TABLE(
    uname => 'USER',
    orig_table => 'ORIGINAL_TABLE',
    int_table => 'INTERIM_TABLE');
END;
/

6. INSERT INTO SELECT 复制数据

-- 前提:目标表已存在
INSERT INTO target_table 
SELECT * FROM source_table;

-- 指定列插入
INSERT INTO target_table (col1, col2, col3)
SELECT col1, col2, col3 FROM source_table;

7. 复制包括约束和索引

-- 1. 复制结构
CREATE TABLE new_table AS 
SELECT * FROM original_table WHERE 1=0;

-- 2. 手动添加约束
ALTER TABLE new_table ADD CONSTRAINT pk_new PRIMARY KEY (id);
ALTER TABLE new_table ADD CONSTRAINT fk_new FOREIGN KEY (ref_id) 
  REFERENCES other_table(id);

-- 3. 复制索引
CREATE INDEX idx_new_col ON new_table(column_name);

8. 使用 SQL Developer 的数据库复制功能

工具 → 数据库复制 选择源连接和目标连接 选择要复制的对象类型 配置复制选项 执行复制

实用技巧和注意事项

性能优化:

-- 禁用约束和索引提高插入速度
ALTER TABLE new_table DISABLE CONSTRAINT constraint_name;
ALTER INDEX index_name UNUSABLE;

-- 使用并行和NOLOGGING(生产环境慎用)
CREATE TABLE new_table NOLOGGING PARALLEL 4 AS 
SELECT /*+ PARALLEL(4) */ * FROM original_table;

-- 分批次插入大表
INSERT /*+ APPEND */ INTO new_table 
SELECT * FROM original_table WHERE ROWNUM <= 10000;

查看表空间使用情况:

-- 复制前确认表空间
SELECT tablespace_name, bytes/1024/1024 MB 
FROM user_segments 
WHERE segment_name = 'ORIGINAL_TABLE';

验证数据一致性:

-- 检查行数
SELECT COUNT(*) FROM original_table;
SELECT COUNT(*) FROM new_table;

-- 数据对比
SELECT '差异数据' AS remark, a.*
FROM (
  SELECT * FROM original_table
  MINUS
  SELECT * FROM new_table
) a;

选择建议:

  • 小表快速复制:使用 CTAS 方法
  • 复制到不同数据库:使用导出/导入工具
  • 保留完整对象结构:使用 DBMS_METADATA
  • 在线操作生产表:使用 DBMS_REDEFINITION
  • 图形化操作:使用 SQL Developer 界面工具

根据你的具体需求(是否需要数据、是否需要约束索引、表的大小等)选择合适的方法。

相关帖子
非全日制用工或兼职,单位需要为其缴纳社保吗?门槛在哪?
非全日制用工或兼职,单位需要为其缴纳社保吗?门槛在哪?
2026年,退休人员的基本医保个人账户划入标准会有新的变化吗?
2026年,退休人员的基本医保个人账户划入标准会有新的变化吗?
未来共享用工的规范化发展,是否会催生出新的劳动合同文本或标准?
未来共享用工的规范化发展,是否会催生出新的劳动合同文本或标准?
阜阳市商城网站制作设计%短视频推广,高端网站开发设计
阜阳市商城网站制作设计%短视频推广,高端网站开发设计
阜阳市120长途救护车收费一般多少钱&救护车租车护送病人转院
阜阳市120长途救护车收费一般多少钱&救护车租车护送病人转院
新国标电动车要求强制佩戴头盔,相关安全规范未来还会有哪些升级?
新国标电动车要求强制佩戴头盔,相关安全规范未来还会有哪些升级?
自由职业者或灵活就业人员,是否可以为自己设立交通通讯补贴以降低税负?
自由职业者或灵活就业人员,是否可以为自己设立交通通讯补贴以降低税负?
2026年,社会舆论和年轻人对彩礼“限高”政策的普遍看法是什么?
2026年,社会舆论和年轻人对彩礼“限高”政策的普遍看法是什么?
计算经济补偿金时,工资基数是指应发工资还是实发工资?
计算经济补偿金时,工资基数是指应发工资还是实发工资?
到2026年,社保“第六险”的评估标准是否更加统一和规范了?
到2026年,社保“第六险”的评估标准是否更加统一和规范了?
贷款期间房产信息变更,讲解信息修改及二次抵押备案调整流程
贷款期间房产信息变更,讲解信息修改及二次抵押备案调整流程
从千兆宽带降级到百兆,运营商要求缴纳高额设备调测费是否合理?
从千兆宽带降级到百兆,运营商要求缴纳高额设备调测费是否合理?
2026年新的食品标识规定,是否让预制菜配料表更透明易懂?
2026年新的食品标识规定,是否让预制菜配料表更透明易懂?
智能汽车记录的行车轨迹信息是否属于个人隐私信息范畴
智能汽车记录的行车轨迹信息是否属于个人隐私信息范畴
如何区分是为了实际需求购物,还是为了短暂的情绪抚慰而进行消费?
如何区分是为了实际需求购物,还是为了短暂的情绪抚慰而进行消费?
2026年,企业的加班审批制度如果过于严格,是否会催生更多隐形加班?
2026年,企业的加班审批制度如果过于严格,是否会催生更多隐形加班?
企业内部非正式的社交活动,如何可能加深某些群体的“隐性”排斥感?
企业内部非正式的社交活动,如何可能加深某些群体的“隐性”排斥感?
对于有过敏性鼻炎的人,在特定季节应如何护理以减少鼻子出血风险?
对于有过敏性鼻炎的人,在特定季节应如何护理以减少鼻子出血风险?
小满节气“苦菜秀”的说法从何而来,这种植物背后有哪些有趣的故事与文化?
小满节气“苦菜秀”的说法从何而来,这种植物背后有哪些有趣的故事与文化?
对维修基金的使用情况有疑问,业主可以通过哪些合法途径进行监督?
对维修基金的使用情况有疑问,业主可以通过哪些合法途径进行监督?
2026年国际原油市场价格波动,主要受全球哪些非政治性供需因素影响?
2026年国际原油市场价格波动,主要受全球哪些非政治性供需因素影响?