oracle查询当前用户下所有的表,包括所有的字段

oracle查询当前用户下所有的表,包括所有的字段

背景:

? 前两天接到一个需求,做一个展示所有表名,表备注,表数据,表字段数,点击查看按钮查看字段名和注释,支持导出。

在Oracle中,可用使用视图USER_TABLES查看当前用户有哪些表,都有多少数据:

table_name:表名,field_num:表字段数,comments:表注释,count_rows(table_name):统计表数据

SELECT * FROM USER_TABLES;

USER_TAB_COLUMNS:表中的所有列

SELECT * FROM USER_TAB_COLUMNS

user_columns:可以查询当前用户下所有表中的字段以及注释,col_name:字段名,comments:字段注释

我们用的是国产虚谷数据库,语法和oracle相似,具体实现sql如下:

select  t.table_name as "表名",t.field_num as "字段统计",t.comments as "表备注",count_rows(table_name)  "数据统计" ,c.col_name as "字段名",c.comments as "字段备注"
from user_tables t inner join user_columns c on c.table_id = t.table_id order by t.table_name asc;

查询结果截图:

原文地址:https://www.cnblogs.com/fxsenblog/p/11691335.html

时间: 2024-08-08 05:37:02

oracle查询当前用户下所有的表,包括所有的字段的相关文章

Oracle查询当前用户下的所有表及sqlplus 设置 列宽

如果oracle服务器中装有多个数据库实例,则在用户名处输入:用户名/密码@数据库名称.如果数据库服务器不在本机上,还需要加上数据库服务器的地址:用户名/密码@IP地址/数据库名称. [[email protected] ~]$ sqlplus scott/[email protected]/prod SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 13 19:49:57 2017 Copyright (c) 1982, 2011, Orac

Oracle删除当前用户下的所有表或数据

create or replace procedure pro_droptable is cursor cur is select table_name from user_tables; drop_sql varchar2(1000); begin for tbname in cur loop begin drop_sql:='drop table '||tbname.table_name;--将drop修改为truncate即可删除所有表的数据 execute immediate drop_

oracle 查询当前用户下所有表结构信息

1 select t.table_name,cm.comments, c.COLUMN_NAME,ccm.comments 2 from user_tables t 3 left join user_tab_columns c on c.TABLE_NAME = t.table_name 4 left join user_tab_comments cm on cm.table_name=t.table_name 5 left join user_col_comments ccm on ccm.t

ORACLE删除当前用户下所有的表的方法

1.如果有删除用户的权限,则可以: drop user user_name cascade; 加了cascade就可以把用户连带的数据全部删掉. 删除后再创建该用户.--创建管理员用户create user 用户名 identified by 密码 default tablespace space_data(表空间名称) temporary tablespace space_temp(临时表空间名称);--授权grant connect,dba to 用户名;--修改限额ALTER USER "

oracle 删除当前用户下所有的表、索引、序列...

select 'drop table "' || table_name ||'";'||chr(13)||chr(10) from user_tables;  --delete tables select 'drop view "' || view_name||'";'||chr(13)||chr(10) from user_views;  --delete views select 'drop sequence "' || sequence_name||

查询一个用户下的所有表,查询表结构。设置表列宽。

SELECT * FROM TAB; DESC 表名 设置表列宽: COL 属性名 FOR A长度;

oracle 中如何查询当前用户可以看到的表名、表对应的所有字段

前言:利用 oracle 的视图来查询表的相关信息. oracle 查询当前用户下的表名 + 表注释 select t.table_name tableName, f.comments comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name oracle 查询某表的所有字段 + 字段注释 + 字段类型 SELECT t.TABLE_NAME tableName, t.COL

oracle 中查询当前用户可以看到的表名、表对应的所有字段 原

转自:https://my.oschina.net/u/3783799/blog/2870207 1.oracle 查询当前用户下的表名,表注释 select t.table_name, f.comments  from user_tables t inner join user_tab_comments f    on t.table_name = f.table_name 2.oracle 查询某表的所有字段,字段注释,字段类型 SELECT a.TABLE_NAME, a.COLUMN_N

oracle查询所有用户表的表名、主键名称、索引、外键等

1.查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表 2.查找表的主键(包括名称,构成列): select cu.* from user_cons_columns cu, user_constr