ORACLE通过对照表快速建view

简介: ORACLE通过对照表快速建view

以terence用户下的表为例,对照表建立如下

DROP TABLE CONTRAST_TABLE PURGE;
CREATE TABLE CONTRAST_TABLE AS 
SELECT table_name,
       'N_' || table_name AS new_tbl_name,
       column_name,
       'new_' || column_name AS new_col_name
  FROM all_tab_cols
  WHERE owner = 'TERENCE';


然后,找人翻译,此处不提

翻译后直接用对照表生成view就可以了

注意分配好权限


/*建view*/
DECLARE
  v_sql CLOB;
BEGIN
  FOR cur IN (SELECT 'CREATE OR REPLACE VIEW ' || new_tbl_name || ' as ' ||
                     chr(10) || 'select ' || chr(10) ||
                     wmsys.wm_concat(column_name || ' as ' || new_col_name ||
                                     chr(10)) || 'from TERENCE.' ||
                     table_name AS create_view
                FROM CONTRAST_TABLE
               GROUP BY table_name, new_tbl_name) LOOP
    v_sql := cur.create_view;
    EXECUTE IMMEDIATE v_sql;
  END LOOP;
END;


我这儿偷懒用了wm_concat,所以适用于11.2

如果不是这个版本,报错wm_concat标识符无效

相关文章
|
关系型数据库 Oracle
|
关系型数据库 Oracle
|
关系型数据库 Oracle
|
Oracle 关系型数据库 Shell
oracle dba create view 失败 解决办法
SQL> CONN /AS SYSDBA 已连接。 SQL> CREATE OR REPLACE VIEW SCOTT.VIEW_1 AS SELECT * FROM sh.CUSTOMERS; CREATE OR REPLACE VIEW SCOTT.VIEW_1 AS SELECT * FROM sh.CUSTOMERS                      
1999 0
|
Oracle 关系型数据库 OLAP
[20130727]ORACLE 12C使用expdp导出view数据.txt
[20130727]ORACLE 12C使用expdp导出view数据.txt12C新特性里面可以定义试图,然后通过view当作表一样导出数据,然后导入数据库,自己做一个测试:1.
1623 0
|
11月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】Oracle数据库配置助手:DBCA
Oracle数据库配置助手(DBCA)是用于创建和配置Oracle数据库的工具,支持图形界面和静默执行模式。本文介绍了使用DBCA在Linux环境下创建数据库的完整步骤,包括选择数据库操作类型、配置存储与网络选项、设置管理密码等,并提供了界面截图与视频讲解,帮助用户快速掌握数据库创建流程。
882 93
|
10月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】使用NetManager创建Oracle数据库的监听器
Oracle NetManager是数据库网络配置工具,用于创建监听器、配置服务命名与网络连接,支持多数据库共享监听,确保客户端与服务器通信顺畅。
468 0
|
存储 Oracle 关系型数据库
服务器数据恢复—光纤存储上oracle数据库数据恢复案例
一台光纤服务器存储上有16块FC硬盘,上层部署了Oracle数据库。服务器存储前面板2个硬盘指示灯显示异常,存储映射到linux操作系统上的卷挂载不上,业务中断。 通过storage manager查看存储状态,发现逻辑卷状态失败。再查看物理磁盘状态,发现其中一块盘报告“警告”,硬盘指示灯显示异常的2块盘报告“失败”。 将当前存储的完整日志状态备份下来,解析备份出来的存储日志并获得了关于逻辑卷结构的部分信息。

推荐镜像

更多