oracle查询所有表和表结构信息sql
/** --------- oracle查询所有表和表结构信息sql ---------------- **/ SELECT distinct T.database_name "表空间", T.table_name AS "表名", T.column_name AS "字段名", T .column_type AS "数据类型", T .data_length AS "数据长度", T .column_comment AS "字段注释", b.constraint_type AS "约束定义类型" FROM (SELECT UB.tablespace_name AS database_name, UTC.table_name AS table_name, UTC.column_name AS column_name, UTC.data_type AS column_type, utc.data_length AS data_length, ucc.comments AS column_comment FROM user_tables ub LEFT JOIN user_tab_columns utc ON ub.table_name = UTC.table_name LEFT JOIN user_col_comments ucc ON utc.column_name = ucc.column_name AND utc.table_name = ucc.table_name) T LEFT JOIN (SELECT UCC.table_name AS table_name, ucc.column_name AS column_name, wm_concat(UC.constraint_type) AS constraint_type FROM user_cons_columns ucc LEFT JOIN user_constraints uc ON UCC.constraint_name = UC.constraint_name GROUP BY UCC.table_name, ucc.column_name) b ON T.table_name = b.TABLE_NAME AND T.column_name = b.column_name where t.table_name =UPPER('bs_xmk_yj'); SELECT distinct a.table_name "资源表名", a.column_name "字段名称" , decode(b.uniqueness,'UNIQUE','是','否') "是否可以为空" , decode(substr(a.INDEX_NAME,0,2),'PK','是',' ') "是否主键", decode(substr(a.INDEX_NAME,0,2),'PK',' ','是') "是否索引" FROM all_ind_columns a, all_indexes b WHERE a.index_name = b.index_name AND a.table_name = upper('zb_bal'); ---Oracle 查询库中所有表名、字段名、字段名说明,查询表的数据条数、表名、中文表名 ---查询所有表名: select t.table_name from user_tables t; ---查询所有字段名: select t.column_name from user_col_comments t; ---查询指定表的所有字段名: select t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB'; ---查询指定表的所有字段名和字段说明: select t.column_name, t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB'; ---查询所有表的表名和表说明: select t.table_name,f.comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name; ---查询模糊表名的表名和表说明: select t.table_name from user_tables t where t.table_name like 'BIZ_DICT%'; select t.table_name,f.comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name where t.table_name like 'BIZ_DICT%'; --查询表的数据条数、表名、中文表名 select a.num_rows, a.TABLE_NAME, b.COMMENTS from user_tables a, user_tab_comments b WHERE a.TABLE_NAME = b.TABLE_NAME order by TABLE_NAME; select * from all_tab_comments -- 查询所有用户的表,视图等。 select * from user_tab_comments -- 查询本用户的表,视图等。 select * from all_col_comments --查询所有用户的表的列名和注释。 select * from user_col_comments -- 查询本用户的表的列名和注释。 select * from all_tab_columns --查询所有用户的表的列名等信息。 select * from [user]_tab_columns --查询本用户的表的列名等信息。 ---查询所有表名: select t.table_name from user_tables t; ---查询所有字段名: select t.column_name from user_col_comments t; ---查询指定表的所有字段名: select t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB'; ---查询指定表的所有字段名和字段说明: select t.column_name, t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB'; ---查询所有表的表名和表说明: select t.table_name,f.comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name; ---查询模糊表名的表名和表说明: select t.table_name from user_tables t where t.table_name like 'BIZ_DICT%'; select t.table_name,f.comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name where t.table_name like 'BIZ_DICT%'; --查询表的数据条数、表名、中文表名 select a.num_rows, a.TABLE_NAME, b.COMMENTS from user_tables a, user_tab_comments b WHERE a.TABLE_NAME = b.TABLE_NAME order by TABLE_NAME; select * from all_tab_comments -- 查询所有用户的表,视图等。 select * from user_tab_comments -- 查询本用户的表,视图等。 select * from all_col_comments --查询所有用户的表的列名和注释。 select * from user_col_comments -- 查询本用户的表的列名和注释。 select * from all_tab_columns --查询所有用户的表的列名等信息。 select * from [user]_tab_columns --查询本用户的表的列名等信息 -------------------------user_tables----------------------------------------------------------------- comment on table user_tables is '用户的表段信息'; comment on column user_tables.table_name is ' 表名'; comment on column user_tables.tablespace_name is ' 表空间名'; comment on column user_tables.cluster_name is ' 群集名称'; comment on column user_tables.iot_name is ' IOT(Index Organized Table)索引组织表的名称'; comment on column user_tables.status is ' 状态'; comment on column user_tables.pct_free is ' 为一个块保留的空间百分比'; comment on column user_tables.pct_used is ' 一个块的使用水位的百分比'; comment on column user_tables.ini_trans is ' 初始交易的数量'; comment on column user_tables.max_trans is ' 交易的最大数量'; comment on column user_tables.initial_extent is ' 初始扩展数'; comment on column user_tables.next_extent is ' 下一次扩展数'; comment on column user_tables.min_extents is ' 最小扩展数'; comment on column user_tables.max_extents is ' 最大扩展数'; comment on column user_tables.pct_increase is ' 表在做了第一次extent后,下次再扩展时的增量,它是一个百分比值'; comment on column user_tables.freelists is ' 可用列表是e799bee5baa6e79fa5e98193e59b9ee7ad9431333365643533表中的一组可插入数据的可用块'; comment on column user_tables.freelist_groups is ' 列表所属组'; comment on column user_tables.logging is ' 是否记录日志'; comment on column user_tables.backed_up is ' 指示自上次修改表是否已备份(Y)或否(N)的'; comment on column user_tables.num_rows is ' 表中的行数'; comment on column user_tables.blocks is ' 所使用的数据块数量'; comment on column user_tables.empty_blocks is ' 空数据块的数量'; comment on column user_tables.avg_space is ' 自由空间的平均量'; comment on column user_tables.chain_cnt is ' 从一个数据块,或迁移到一个新块链接表中的行数'; comment on column user_tables.avg_row_len is ' 行表中的平均长度'; comment on column user_tables.avg_space_freelist_blocks is ' 一个freelist上的所有块的平均可用空间'; comment on column user_tables.num_freelist_blocks is ' 空闲列表上的块数量'; comment on column user_tables.degree is ' 每个实例的线程数量扫描表'; comment on column user_tables.instances is ' 跨表进行扫描的实例数量'; comment on column user_tables.cache is ' 是否是要在缓冲区高速缓存'; comment on column user_tables.table_lock is ' 是否启用表锁'; comment on column user_tables.sample_size is ' 分析这个表所使用的样本大小'; comment on column user_tables.last_analyzed is ' 最近分析的日期'; comment on column user_tables.partitioned is ' 表是否已分区'; comment on column user_tables.iot_type is ' 表是否是索引组织表'; comment on column user_tables.temporary is ' 表是否是暂时的'; comment on column user_tables.secondary is ' 表是否是次要的对象'; comment on column user_tables.nested is ' 是否是一个嵌套表'; comment on column user_tables.buffer_pool is ' 缓冲池的表'; comment on column user_tables.flash_cache is ' 智能闪存缓存提示可用于表块'; comment on column user_tables.cell_flash_cache is ' 细胞闪存缓存提示可用于表块'; comment on column user_tables.row_movement is ' 是否启用分区行运动'; comment on column user_tables.global_stats is ' 作为一个整体(全球统计)表的统计的是否准确'; comment on column user_tables.user_stats is ' 是否有统计'; comment on column user_tables.duration is ' 临时表的时间'; comment on column user_tables.skip_corrupt is ' 是否忽略损坏的块标记在表和索引扫描(ENABLED)状态的或将引发一个错误(已禁用)。'; comment on column user_tables.monitoring is ' 是否有监测属性集'; comment on column user_tables.cluster_owner is ' 群集的所有者'; comment on column user_tables.dependencies is ' 行依赖性跟踪是否已启用'; comment on column user_tables.compression is ' 是否启用表压缩'; comment on column user_tables.compress_for is ' 什么样的操作的默认压缩'; comment on column user_tables.dropped is ' 是否已经删除并在回收站'; comment on column user_tables.read_only is ' 表是否是只读'; comment on column user_tables.segment_created is ' 是否创建表段'; comment on column user_tables.result_cache is ' 结果缓存表的模式注释 '; -------------------------user_tables----------------------------------------------------------------- comment on table USER_TAB_COLUMNS is '用户的表列信息'; comment on column user_tab_columns.TABLE_NAME is ' 表、视图或集群名称 '; comment on column user_tab_columns.COLUMN_NAME is ' 列名 '; comment on column user_tab_columns.DATA_TYPE is ' 列的数据类型 '; comment on column user_tab_columns.DATA_TYPE_MOD is ' 柱的数据类型修改器 '; comment on column user_tab_columns.DATA_TYPE_OWNER is ' 列的数据类型的所有者 '; comment on column user_tab_columns.DATA_LENGTH is ' 以字节为单位的列的长度 '; comment on column user_tab_columns.DATA_PRECISION is ' 长度:十进制(数字)或二进制数字(浮动) '; comment on column user_tab_columns.DATA_SCALE is ' 在一个数字中数点右的小数 '; comment on column user_tab_columns.NULLABLE is ' 列是否允许NULL值? '; comment on column user_tab_columns.COLUMN_ID is ' 创建的列的序列号 '; comment on column user_tab_columns.DEFAULT_LENGTH is ' 该列的默认值的长度 '; comment on column user_tab_columns.DATA_DEFAULT is ' 列的默认值 '; comment on column user_tab_columns.NUM_DISTINCT is ' 列中不同值的个数 '; comment on column user_tab_columns.LOW_VALUE is ' 列中的低值 '; comment on column user_tab_columns.HIGH_VALUE is ' 列中的高值 '; comment on column user_tab_columns.DENSITY is ' 柱的密度 '; comment on column user_tab_columns.NUM_NULLS is ' 列中的空数 '; comment on column user_tab_columns.NUM_BUCKETS is ' 柱状柱中的桶数 '; comment on column user_tab_columns.LAST_ANALYZED is ' 最近一次这一专栏的日期被分析了 '; comment on column user_tab_columns.SAMPLE_SIZE is ' 用于分析这一列的样本大小 '; comment on column user_tab_columns.CHARACTER_SET_NAME is ' 字符集名称 '; comment on column user_tab_columns.CHAR_COL_DECL_LENGTH is ' 字符列的声明长度 '; comment on column user_tab_columns.GLOBAL_STATS is ' 统计数据是否在没有合并底层分区的情况下计算? '; comment on column user_tab_columns.USER_STATS is ' 统计数据直接由用户输入吗? '; comment on column user_tab_columns.AVG_COL_LEN is ' 以字节为单位的列的平均长度 '; comment on column user_tab_columns.CHAR_LENGTH is ' 字符中列的最大长度 '; comment on column user_tab_columns.CHAR_USED is ' C的最大长度是字符,B如果是字节 '; comment on column user_tab_columns.V80_FMT_IMAGE is ' 列数据是8.0图像格式吗? '; comment on column user_tab_columns.DATA_UPGRADED is ' 列数据是否已升级为最新类型版本格式? '; comment on column user_tab_columns.HISTOGRAM is ' '; -------------------------user_col_comments----------------------------------------------------------------- comment on table user_col_comments is '对用户表和视图列的评论'; comment on column user_col_comments.TABLE_NAME is ' 对象名称 '; comment on column user_col_comments.COLUMN_NAME is ' 列名'; comment on column user_col_comments.COMMENTS is ' 对专栏发表评论'; -------------------------user_cons_columns----------------------------------------------------------------- comment on table user_cons_columns is '关于约束定义中可访问列的信息'; comment on column user_cons_columns.OWNER is ' 所有者约束定义'; comment on column user_cons_columns.CONSTRAINT_NAMEis ' 与约束定义关联的名称'; comment on column user_cons_columns.TABLE_NAME is ' 与约束定义的表相关联的名称'; comment on column user_cons_columns.COLUMN_NAME is ' 与约束定义中指定的列或对象列的属性相关联的名称'; comment on column user_cons_columns.POSITION is ' 定义中列或属性的原始位置'; -------------------------user_constraints----------------------------------------------------------------- comment on table user_constraints is '约束定义在用户自己的表上'; comment on column user_constraints.OWNER is ' 表的所有者'; comment on column user_constraints.CONSTRAINT_NAME is ' 与约束定义关联的名称 '; comment on column user_constraints.CONSTRAINT_TYPE is ' 类型的约束定义 '; comment on column user_constraints.TABLE_NAME is ' 与约束定义的表相关联的名称 '; comment on column user_constraints.SEARCH_CONDITION is ' 表检查的搜索条件文本 '; comment on column user_constraints.R_OWNER is ' 引用约束中使用的表的所有者 '; comment on column user_constraints.R_CONSTRAINT_NAME is ' 引用表的唯一约束定义的名称 '; comment on column user_constraints.DELETE_RULE is ' 引用约束的删除规则 '; comment on column user_constraints.STATUS is ' 约束启用或禁用的执行状态 '; comment on column user_constraints.DEFERRABLE is ' 约束是可延期的-可延期还是不可延期 '; comment on column user_constraints.DEFERRED is ' 约束是默认延迟的——延迟的还是立即的 '; comment on column user_constraints.VALIDATED is ' 这个约束系统得到验证了吗?-是否验证 '; comment on column user_constraints.GENERATED is ' 是否生成了约束名称系统?—生成的用户名或用户名 '; comment on column user_constraints.BAD is ' 创建这个约束应该给出ORA-02436。公元2000年之前重写。 '; comment on column user_constraints.RELY is ' 如果设置了该标志,将在优化器中使用 '; comment on column user_constraints.LAST_CHANGE is ' 上次启用或禁用此列的日期 '; comment on column user_constraints.INDEX_OWNER is ' 约束使用的索引的所有者 '; comment on column user_constraints.INDEX_NAME is ' 约束使用的索引 '; comment on column user_constraints.INVALID is ''; comment on column user_constraints.VIEW_RELATED is ''; Type Code Type Description Acts On Level C Check on a table Column O Read Only on a view Object P 主键 Object R 引用的外键 Column U 唯一键 Column V 检查视图上的选项 Object -------------------------all_ind_columns----------------------------------------------------------------- comment on table all_ind_columns is '列组成可访问表上的索引'; comment on column all_ind_columns.INDEX_OWNER is ' 指数的主人 '; comment on column all_ind_columns.INDEX_NAME is ' 索引名称 '; comment on column all_ind_columns.TABLE_OWNER is ' 表或集群的主人 '; comment on column all_ind_columns.TABLE_NAME is ' 表或集群名称'; comment on column all_ind_columns.COLUMN_NAME is ' 对象列的列名或属性'; comment on column all_ind_columns.COLUMN_POSITION is ' 列或属性在索引中的位置'; comment on column all_ind_columns.COLUMN_LENGTH is ' 列或属性的最大长度,以字节为单位'; comment on column all_ind_columns.CHAR_LENGTH is ' 列或属性的最大长度,以字符为单位'; comment on column all_ind_columns.DESCEND is ' 如果该列在磁盘上按降序排序,则为ASC'; -------------------------all_indexes----------------------------------------------------------------- comment on table all_indexes is '用户可访问的表的索引描述'; comment on column all_indexes.OWNER is ' 用户名的所有者指数 '; comment on column all_indexes.INDEX_NAME is ' 索引的名称 '; comment on column all_indexes.INDEX_TYPE is ' '; comment on column all_indexes.TABLE_OWNER is ' 索引对象的所有者 '; comment on column all_indexes.TABLE_NAME is ' 索引对象的名称 '; comment on column all_indexes.TABLE_TYPE is ' 被索引的对象类型'; comment on column all_indexes.UNIQUENESS is ' 索引的唯一性状态:"UNIQUE", "NONUNIQUE",或"BITMAP"'; comment on column all_indexes.COMPRESSION is ' 索引压缩属性:"ENABLED", "DISABLED",或NULL'; comment on column all_indexes.PREFIX_LENGTH is ' 用于压缩的前缀中的键列数'; comment on column all_indexes.TABLESPACE_NAME is ' 包含索引的表空间名称'; comment on column all_indexes.INI_TRANS is ' 最初的交易数量'; comment on column all_indexes.MAX_TRANS is ' 最大数量的交易'; comment on column all_indexes.INITIAL_EXTENT is ' 最初的程度的大小'; comment on column all_indexes.NEXT_EXTENT is ' 中等程度的大小 '; comment on column all_indexes.MIN_EXTENTS is ' 段中允许的最小区段数'; comment on column all_indexes.MAX_EXTENTS is ' 段中允许的最大区段数'; comment on column all_indexes.PCT_INCREASE is ' 区段大小比例增加'; comment on column all_indexes.PCT_THRESHOLD is ' 每个索引项允许的块空间的阈值百分比'; comment on column all_indexes.INCLUDE_COLUMN is ' User column-id表示要包含在索引组织的表顶索引中的最后一列'; comment on column all_indexes.FREELISTS is ' 在这个段中分配的进程自由列表的数量'; comment on column all_indexes.FREELIST_GROUPS is ' 分配给这个段的自由列表组的数目'; comment on column all_indexes.PCT_FREE is ' 块中空闲空间的最小百分比'; comment on column all_indexes.LOGGING is ' 日志记录属性 '; comment on column all_indexes.BLEVEL is ' b - tree水平 '; comment on column all_indexes.LEAF_BLOCKS is ' 叶块的数量在索引中'; comment on column all_indexes.DISTINCT_KEYS is ' 索引中不同键的数目'; comment on column all_indexes.AVG_LEAF_BLOCKS_PER_KEY is ' 每个键的叶块的平均数量'; comment on column all_indexes.AVG_DATA_BLOCKS_PER_KEY is ' 每个键的平均数据块数'; comment on column all_indexes.CLUSTERING_FACTOR is ' 度量这个索引所针对的表的(dis)顺序的数量'; comment on column all_indexes.STATUS is ' 非分区索引是否可用'; comment on column all_indexes.NUM_ROWS is ' '; comment on column all_indexes.SAMPLE_SIZE is ' 用于分析该指数的样本大小'; comment on column all_indexes.LAST_ANALYZED is ' 该指数被分析的最近时间的日期'; comment on column all_indexes.DEGREE is ' 每个实例用于扫描分区索引的线程数'; comment on column all_indexes.INSTANCES is ' 要扫描分区索引的实例数目'; comment on column all_indexes.PARTITIONED is ' 这个索引是分区的吗?是或否 '; comment on column all_indexes.TEMPORARY is ' 当前会话是否只能看到它放在这个对象本身中的数据? '; comment on column all_indexes.GENERATED is ' 是否生成了这个索引系统的名称? '; comment on column all_indexes.SECONDARY is ' 索引对象是否作为域索引的iccreate的一部分创建? '; comment on column all_indexes.BUFFER_POOL is ' 用于索引块的默认缓冲池'; comment on column all_indexes.FLASH_CACHE is ' 用于索引块的默认flash缓存提示'; comment on column all_indexes.CELL_FLASH_CACHE is ' 用于索引块的默认单元格闪存缓存提示'; comment on column all_indexes.USER_STATS is ' 统计数据是由用户直接输入的吗? '; comment on column all_indexes.DURATION is ' 如果索引在临时表上,那么持续时间是sys$session或sys$transaction else NULL'; comment on column all_indexes.PCT_DIRECT_ACCESS is ' 如果索引在物联网,那么这是有效猜测行的百分比'; comment on column all_indexes.ITYP_OWNER is ' 如果是域索引,则这是indextype所有者'; comment on column all_indexes.ITYP_NAME is ' 如果是domain index,则这是相关联的indextype的名称'; comment on column all_indexes.PARAMETERS is ' 如果是domain index,则这是参数字符串'; comment on column all_indexes.GLOBAL_STATS is ' 是否在没有合并基础分区的情况下计算统计数据? '; comment on column all_indexes.DOMIDX_STATUS is ' 域索引的indextype是否有效'; comment on column all_indexes.DOMIDX_OPSTATUS is ' 域索引操作的状态'; comment on column all_indexes.FUNCIDX_STATUS is ' 基于功能的索引是禁用还是启用? '; comment on column all_indexes.JOIN_INDEX is ' 这个索引是一个连接索引吗? '; comment on column all_indexes.IOT_REDUNDANT_PKEY_ELIM is ' 是否从物联网二级索引中删除了冗余的主键列? '; comment on column all_indexes.DROPPED is ' 索引是否被删除,是否在回收站中'; comment on column all_indexes.VISIBILITY is ' 索引对优化器是可见还是不可见'; comment on column all_indexes.DOMIDX_MANAGEMENT is ' 如果这是一个域索引,那么它是系统管理的还是用户管理的'; comment on column all_indexes.SEGMENT_CREATED is ' 索引段是否已经创建'; SQL>
为人:谦逊、激情、博学、审问、慎思、明辨、 笃行
学问:纸上得来终觉浅,绝知此事要躬行
为事:工欲善其事,必先利其器。
态度:道阻且长,行则将至;行而不辍,未来可期
.....................................................................
------- 桃之夭夭,灼灼其华。之子于归,宜其室家。 ---------------
------- 桃之夭夭,有蕡其实。之子于归,宜其家室。 ---------------
------- 桃之夭夭,其叶蓁蓁。之子于归,宜其家人。 ---------------
=====================================================================
* 博客文章部分截图及内容来自于学习的书本及相应培训课程以及网络其他博客,仅做学习讨论之用,不做商业用途。
* 如有侵权,马上联系我,我立马删除对应链接。 * @author Alan -liu * @Email no008@foxmail.com
转载请标注出处! ✧*꧁一品堂.技术学习笔记꧂*✧. ---> https://www.cnblogs.com/ios9/
学问:纸上得来终觉浅,绝知此事要躬行
为事:工欲善其事,必先利其器。
态度:道阻且长,行则将至;行而不辍,未来可期
.....................................................................
------- 桃之夭夭,灼灼其华。之子于归,宜其室家。 ---------------
------- 桃之夭夭,有蕡其实。之子于归,宜其家室。 ---------------
------- 桃之夭夭,其叶蓁蓁。之子于归,宜其家人。 ---------------
=====================================================================
* 博客文章部分截图及内容来自于学习的书本及相应培训课程以及网络其他博客,仅做学习讨论之用,不做商业用途。
* 如有侵权,马上联系我,我立马删除对应链接。 * @author Alan -liu * @Email no008@foxmail.com
转载请标注出处! ✧*꧁一品堂.技术学习笔记꧂*✧. ---> https://www.cnblogs.com/ios9/