方法一:PLSQL + POWER DESIGNER + PDMREADE

1、从PLSQL中导出表结构,点击TOOL==>export user objects ,导出文件名为test.sql

注意,因为公司要求只需要表格,根据要求User 选择IRCP ,type选择TABLE ,通过shift 全选,将storage owner 不选,直接导出文件到桌面。

2、打开PowerDesigner

 单击File---->Reverse Engineer---->Database

设值文件名并选择数据库类型

选择之前导出的test.sql,单击确定,这步因为数据量比较大,很慢,耐心等待即可!

成功生成PDM文件后的窗口如上图,然后右键PhysicalDataModel_1,单击save as

另存为test.pdm

3、打开PDMReader,单击文件--->打开*.pdm数据字典文件,选择之前导出的test.pdm文件,最后右键PhysicalDataModel_1.pdm,文件导出--->导出到word

若无法打开.pdm文档,建议关闭后重新打开一次即可,或者需要更新软件

方法二  直接使用SQL语句筛选 ,结合Excel宏将各表分开,最后通过超链接函数(比较复杂,耗时严重,手动较多)

1、将表结构导出,按住表格左上角然后右键 导出Excel

SELECT OWNER, TABLE_NAME AS "表名", COMMENTS AS "表注释"  FROM  ALL_TAB_COMMENTS where owner = 'IRCP' ORDER BY TABLE_NAME
------查询出所有表,导出Excel ,作为基表存在
select B.TABLE_NAME AS "F表名",C.COMMENTS AS "表说明",B.COLUMN_ID AS "字段序号",B.COLUMN_NAME AS "字段名",B.DATA_TYPE AS "字段数据类型",A.COMMENTS AS "字段描述"
FROM ALL_COL_COMMENTS A,ALL_TAB_COLUMNS B,ALL_TAB_COMMENTS C
WHERE A.TABLE_NAME IN (SELECT U.TABLE_NAME FROM USER_ALL_TABLES U)AND A.OWNER = B.OWNERAND A.TABLE_NAME = B.TABLE_NAMEAND A.COLUMN_NAME = B.COLUMN_NAMEAND C.TABLE_NAME= A.TABLE_NAMEAND C.OWNER = A.OWNERAND A.OWNER = 'IRCP'/*   AND A.TABLE_NAME = 'ABNORMAL_TRAN_MONITOR'*/
ORDER BY A.TABLE_NAME ,B.COLUMN_ID
-----查询出所有表名称和每个表内容,导出Excel ,供之后使用宏拆分

2、打开目标excel,按alt + f11键打开VBE窗口

选择插入->模块粘贴下面代码到编辑器中

3、输入下面这段语句

Sub 保留表头拆分数据为若干新工作簿()
    Dim arr, d As Object, k, t, i&, lc%, rng As Range, c%
    c = Application.InputBox("请输入拆分列号", , 4, , , , , 1)
    If c = 0 Then Exit Sub
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    arr = [a1].CurrentRegion
    lc = UBound(arr, 2)
    Set rng = [a1].Resize(, lc)
    Set d = CreateObject("scripting.dictionary")
    For i = 2 To UBound(arr)
        If Not d.Exists(arr(i, c)) Then
            Set d(arr(i, c)) = Cells(i, 1).Resize(1, lc)
        Else
            Set d(arr(i, c)) = Union(d(arr(i, c)), Cells(i, 1).Resize(1, lc))
        End If
    Next
    k = d.Keys
    t = d.Items
    For i = 0 To d.Count - 1
        With Workbooks.Add(xlWBATWorksheet)
            rng.Copy .Sheets(1).[a1]
            t(i).Copy .Sheets(1).[a2]
            .SaveAs Filename:=ThisWorkbook.Path & "\" & k(i) & ".xls"
            .Close
        End With
    Next
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    MsgBox "完毕"
End Sub

4、保存后 (显示保存不了关系也不大)打开Excel常规页面 ,点击视图==》宏==》查看宏,自动弹出下面窗口,点击确定

5、 鼠标从按钮上面移开  ,然后点击按钮输入要列号,就是根据哪列的数据进行拆分文件,下图我们输入4就是按照班级进行拆分,根据不同的班级拆分成不同的文件

6、点击确定后,如果弹出完毕提示框代表拆分完成(数据量大就比较慢,耐心等待即可)

7、到源文件所在的目录文件中查看拆分的文件

8、将拆分的文件与第2步的基表进行连接,使用超链接函数=HYPERLINK(link_location,friendly_name),基本实现从主表找到从表的形式,目前的问题是需要进入从表后返回,以及将从表全部放在主表中,方便其他同事使用,因为已经通过第一种方法解决,这个就没有往后思考了,希望看到的朋友能给一些思路,谢谢!

注释:查询的过程中也有朋友说使用spool等脚本,不太理解

plsql导出数据字典相关推荐

  1. oracle字典表导出,oracle 如何导出数据字典

    -- 查询某表的数据字典 SELECT  A.TABLE_NAME AS "表名",A.COLUMN_NAME AS "字段名", DECODE(A.CHAR_ ...

  2. Oracle PLSQL 导出数据table xx contains one or more CLOB columns 解决方案

    Oracle PLSQL 导出数据table xx contains one or more CLOB columns 解决方案 参考文章: (1)Oracle PLSQL 导出数据table xx ...

  3. mysql导出数据字典6_MySQL利用Navicat导出数据字典

    这里算是一个小技巧 利用mysql的information_schema中的COLUMNS表 和navicat中的导出功能实现快速导出数据字典 CREATE TEMPORARYTABLE `COLUM ...

  4. PowerDesigner概念模型与物理模型相互转换及导出数据字典

    原文:PowerDesigner概念模型与物理模型相互转换及导出数据字典 最近公司项目竣工,验收完成后,把整体平台的所有文档都写清楚,找包发给甲方,由于本人是维护数据库工作,依上面要求,必须编写< ...

  5. POWER DESIGNER导出数据字典

    POWER DESIGNER导出数据字典 文章目录 POWER DESIGNER导出数据字典 脚本代码使用方式 打开powerdesigner,点击[工具]菜单,再选择[执行命令]/[编辑/运行脚本] ...

  6. oracle使用PLSQL导出dmp文件一闪而过的解决办法

    PLSQL导出dmp文件闪退原因就是环境变量. 如果在"系统变量"列表框下面的"变量"列中找不到"ORACLE_HOME"和"OR ...

  7. Navicat如何导出数据字典

    很多人想知道,如何导出数据库字典,今天就教大家如何用Navicat导出数据字典 首先打开Navicat 然后打开要导出的数据库 然后新建查询,然后输入以下sql SELECTt.TABLE_SCHEM ...

  8. PLSQL导出的SQL,中文乱码

    PLSQL导出SQL文件,中文乱码,网上搜了半天,没有搜出问题所在,自己摸索了一下,解决了,方法如下: 1.用PLSQL导出SQL语句 2.发现中文乱码 3.进行修改,进入tools->pref ...

  9. PLSQL导出和导入sql脚本

    PLSQL导出和导入sql脚本 1.打开命令行窗口 2.输入@ 3.回车并修改文件类型,然后选择要导入的文件 4.等待结果 导出 不知你是否遇到过,别人导出的sql脚本,导入时plsql扛不住,直接一 ...

  10. PLSQL导出、导入数据 和 同步数据 以及 navicat 里同步数据 以及解决plsql导出数据乱码问题

    PLSQL导出.导入数据 和 同步数据 以及 navicat 里同步数据 以及解决plsql导出数据乱码问题 1. 导出数据 1.1 导出.pde文件 1.2 导出sql文件 1.2.1 导出sql压 ...

最新文章

  1. 字节跳动 EB 级 HDFS 实践
  2. OpenGL延迟着色之三
  3. ALGO-221 数据交换
  4. 1.EXTJS Row Editor Grid 点取消时插入的新行 的解决方法
  5. python委托模式详细解释
  6. 语音识别的最终目标是真正实现人机交互
  7. 新兴IT企业特斯拉(九)——私有化风波
  8. android 台球开源,森林里的台球赛 Android新游《丛林撞球》
  9. 树的遍历 ALDS1_7_C: Tree Walk
  10. Java的依赖对象是什么意思_面向对象编程依赖注入详解
  11. Zookeeper -选举流程
  12. 函数图像的变换 与 解析式的变换 之关系
  13. 第十六天(配置BPDU,TCN BPDU)
  14. 【PhpSpreadsheet】实现excel冻结列和行(即左右滚动时指定列和行固定不动)
  15. 自力更生给笔记本电脑换固态并重装系统
  16. 部署Apache Doris
  17. NTKO 文档控件问题总结
  18. 自动控制原理7.7---离散系统的数字校正
  19. 哔咔漫画怎样切换横屏?
  20. python进程池(子进程)函数没有执行

热门文章

  1. 【pyqt5学习】——日历控件calendarWidget设置单元格格式(前景、背景)、日历控件属性编辑
  2. Robotframework+Appium环境搭建
  3. php如何将时间戳,PHP如何将时间戳转换日期
  4. [HTML+CSS+Vue.js] 超长文本等内容默认折叠显示,点击展开全文,再点击收起(仿知乎效果)
  5. cjson构建_cJSON结构体构建
  6. Windows10安装Vmware12
  7. matlab xlsread 日期,为什么Xlsread读取(日期时间)为字符串
  8. 老男孩Python高级全栈开发工程师【高清全套完整】
  9. 追求代码质量: 使用 TestNG-Abbot 实现自动化 GUI 测试
  10. 博图如何上载wincc程序_博图导入触摸屏程序 如何通过博图下载触摸屏程序