zoukankan      html  css  js  c++  java
  • Oracle查询一个命名空间下所有表和视图的表名、字段名、字段类型、字段大小,是否可为NULL,主键和注释信息

    使用SQL查询Oracle一个命名空间下所有表和视图的表名、字段名、字段类型、字段大小,是否可为NULL,主键和注释信息。

    SQL如下,注意需要将'CDFLOOD'更换为您要查询的命名空间:

    select 
    user_tab_cols.table_name 表名,
    user_tab_cols.column_name 字段名,
    user_tab_cols.data_type 类型,
    user_tab_cols.data_length 大小,
    user_tab_cols.nullable 是否可为NULL,
    CASE
    WHEN tpk.COLUMN_NAME  = user_tab_cols.column_name THEN 'Y'  
    ELSE 'N' END 是否主键,
    user_col_comments.COMMENTS 含意
    from user_tab_cols
    left join (
    -- 查询各表主键字段名称
    select table_info.TABLE_NAME,dba_cons_columns.COLUMN_NAME from (
    select table_name from user_tab_cols group by table_name order by table_name) table_info
    left join dba_constraints on table_info.TABLE_NAME = dba_constraints.TABLE_NAME and dba_constraints.owner='CDFLOOD' and dba_constraints.constraint_type = 'P'
    left join dba_cons_columns on dba_constraints.CONSTRAINT_NAME = dba_cons_columns.CONSTRAINT_NAME and dba_constraints.TABLE_NAME = dba_cons_columns.TABLE_NAME and dba_constraints.owner='CDFLOOD' order by TABLE_NAME) tpk on tpk.TABLE_NAME = user_tab_cols.table_name and tpk.COLUMN_NAME = user_tab_cols.column_name
    -- 查询字段注释
    left join user_col_comments on user_col_comments.TABLE_NAME = user_tab_cols.table_name and user_col_comments.COLUMN_NAME = user_tab_cols.column_name
    order by user_tab_cols.table_name,user_tab_cols.column_id;

    查询结果如下(值中,'Y'表示是,'N'表示否):

  • 相关阅读:
    717 汉诺塔的非递归实现 (25分)
    JSP入门[续]
    JSP运行原理和九大隐式对象
    JSP入门
    Mysql基本命令
    DataGridView数据导出为Excel
    sql server 2005中如何添加外键
    自定义配置文件的读取
    WinForm(C#)CheckedlistBox绑定数据,并获得选中的值(ValueMember)和显示文本(DisplayMember
    No CurrentSessionContext configured Hibernate
  • 原文地址:https://www.cnblogs.com/codecat/p/11358398.html
Copyright © 2011-2022 走看看