视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
导出Oracle数据库中所所有用户表的表结构
2020-11-09 11:57:49 责编:小采
文档


将 Oracle 数据库中所有用户表的表结构导出,并存储到 Excel 表中,存储信息如下图所示:

问题描述:

将 Oracle 数据库中所有用户表的表结构导出,并存储到 Excel 表中,存储信息如下图所示:

SELECT A.TABLE_NAME,A.COMMENTS,B.COLUMN_NAME,B.COMMENTS FROM USER_TAB_COMMENTS a,USER_COL_COMMENTS b WHERE a.table_name = b.table_name

解决方案:

1) 启动 PL/SQL ,应用需要导出表结构的用户登录目标数据库实例

2) New-SQL window 创建查询窗口

3) 在查询窗口中输入以下查询语句:

select t.TABLE_NAME 表名 ,t.COLUMN_ID 序号 ,t.COLUMN_NAME 字段名 ,t.DATA_TYPE 类型 ,t. DATA_LENGTH 长度 ,t.NULLABLE 是否为空

from user_tab_columns t

其中 User_tab_columns 为当前用户表结构信息表。

4) 只想完成后,在查询窗口中点击按钮显示所有记录信息

5) 右键 -copy to Excel ,将查询信息保存到 Excel 中

6) 通过 Excel 中打开保存的查询结果数据,选择数据 - 筛选,,选择不同的表,然后可以取出不同表的表结构

7) 如果在查询过程中选择特定表的表结构则执行以下语句

select t.TABLE_NAME 表名 ,t.COLUMN_ID 序号 ,t.COLUMN_NAME 字段名 ,t.DATA_TYPE 类型 ,t. DATA_LENGTH 长度 ,t.NULLABLE 是否为空

from user_tab_columns t

where TABLE_NAME=’ 表名 ’

注:这里的表名,需要查询的表名替换,比如 User 表则写成: where TABLE_NAME=’User’

经验总结:

1) 数据表 User_tab_columns 中存储了当前用户所有数据表的表结构。

2) 数据表 all_tab_columns 中存储了当前数据库实例中所有数据表的表结构。

3) 数据表 all_tab_columns 和数据表 user_tab_columns 的区别在于表 all_tab_columns 多了一个 owner 字段,用来存储表所属的用户。

通过 PL/SQL 可以将查询结果直接导出到 Excel 文件中。

下载本文
显示全文
专题