Oracle 创建和视图结构一样的表

Posted TT_DUL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 创建和视图结构一样的表相关的知识,希望对你有一定的参考价值。

在某个项目中,甲方提供了若干视图查询源数据,为了少些扯皮事件,于是决定将所有源数据进行备份保存,于是lz 就写了这两个sql,来自动生成 创建表和 插入数据的脚本

1、根据视图名称,自动生成 创建表的 脚本

select   'create table '||result.table_name||'_TB ('|| result.colu || ' )tablespace TBS_DIAOCHA_DATA  pctfree 10 initrans 1 maxtrans 255 storage( initial 384 next 1 minextents 1 maxextents unlimited);'          
from (select table_name,   WMSYS.WM_CONCAT('"'||column_name||'"  '||data_type||'('||data_length||')') as colu  from user_tab_cols where table_name='Z_YX_CZ_VEH' group by table_name) result

2、根据视图名称,自动生成 将当前视图数据插入新建成的表的 脚本

select  'insert into '||result.table_name||'_TB ('|| result.colu||')select '||result.colu|| ' from tocc.'||result.table_name
from  (select table_name,   WMSYS.WM_CONCAT('"'||column_name||'"') as colu  from user_tab_cols where table_name='Z_YX_CZ_VEH' group by table_name)result

其中 :
tocc 为数据库用户名
Z_YX_CZ_VEH 为原视图名称

以上是关于Oracle 创建和视图结构一样的表的主要内容,如果未能解决你的问题,请参考以下文章

oracle怎样建立一个一模一样的表,急~在线等

如何将oracle用户下的表,视图结构导出

Oracle 11g R2 数据字典

oracle导入表结构时报表空间不存在,该怎么解决?

ORACLE 如何只导出导入索引?

如何从 oracle sql 中的一个列结构创建多个列的视图?