我要查询ORACLE中所有表的字段信息、注释、主外键,,我知道这些都分别放在四个ORACLE表中, user_tab_columns,user_col_comments,user_constraints user_cons_columns,麻烦哪位高手能帮我写个SQL查询语句

解决方案 »

  1.   

    select a.column_name as 列名,
           a.data_type as 类型,
           decode(a.data_type, 'NUMBER', a.data_precision, a.data_length) as 长度,
           a.nullable as 是否允许空,
           a.data_default as 缺省值,
           decode(e.key, 'Y', 'Y', 'N') as 外键,
           f.comments as 注释
      from user_tab_columns a,
           user_col_comments f,
           (select b.table_name,
                   b.index_name,
                   b.uniqueness,
                   c.column_name,
                   decode(d.constraint_name, 'R', 'Y', 'N') key
              from user_indexes b,
                   user_ind_columns c,
                   (select constraint_name
                      from user_constraints
                     where constraint_type = 'P') d
             where b.index_name = c.index_name
               and b.index_name = d.constraint_name(+)) e
     where a.table_name = e.table_name(+)
       and a.column_name = e.column_name(+)
       and a.table_name = f.table_name
       and a.column_name = f.column_name
       and a.table_name = 'T_EDR_CON'
     order by a.column_name
    就是这样的效果,,不过这个查询出来的字段名称还是有重复的!!!
      

  2.   

    诚聘DBA!!!! 有意者请联系[email protected] 
    本科以上学历,计算机或相关专业 
    -至少2年的Oracle数据库管理的相关经验 
    -熟悉Oracle的备份恢复,数据迁移,RAC,数据库调优和PL/SQL编写 
    -熟悉Red Hat和Solaris操作系统及Shell脚本编写 
    -熟练的英语听说读写能力 
    -良好的沟通和表达能力 
    -在高强度和富有挑战的工作环境下,进行有效工作的能力 
    -富有创造力,工作积极主动,能主动地与项目组其他成员进行合作 
    -高度认同公司的企业文化:尊重员工,诚实和正直,追求品质和卓越,以客户为中心,恪守个人职责和倡导团队精神,求变创新,专注于技术,社会责任。