【问题标题】:Simple Queries in OracleOracle 中的简单查询
【发布时间】:2009-12-10 06:22:04
【问题描述】:

在 Oracle 中执行以下操作的查询是什么?

  1. 获取所有视图的名称 展示 ? (类似于 select * from 视图,但我不想获得视图 表)
  2. 查看特定来源 查看。

【问题讨论】:

    标签: sql oracle plsql


    【解决方案1】:
    1. 获取所有视图的名称:

      一个。属于当前用户:

      SELECT view_name
      FROM USER_VIEWS;
      

      b.当前用户可见:

      SELECT view_name
      FROM ALL_VIEWS;
      

      c。有哪些:

      SELECT view_name
      FROM DBA_VIEWS;
      
    2. 查看特定视图的来源

      选择文本 FROM xxx_VIEWS WHERE view_name = :myviewname;

    (xxx 可以是 USER、ALL 或 DBA)

    DBA_VIEWS

    【讨论】:

    • 他可能无权访问 DBA_VIEWS。但是 USER_VIEWS 也有文本列。
    • 另外,还有 ALL_VIEWS,所有视图都对当前用户可见。
    【解决方案2】:

    查看sqlplus中视图的定义:

    describe MY_VIEW;
    

    【讨论】:

      【解决方案3】:

      此查询将获取架构中视图的名称。

      select object_name
        from user_objects
       where object_type = 'VIEW'
      

      获取视图源的查询?

      SQL> select dbms_metadata.get_ddl('VIEW', 'VIEW_NAME', 'USERNAME')
       2     from dual
       3   /
      

      【讨论】:

        【解决方案4】:

        用户拥有的视图

         select * from USER_VIEWS ;
        

        检查 oracle 对象元数据

        http://cisnet.baruch.cuny.edu/holowczak/oracle/sqlplus/

        【讨论】:

          【解决方案5】:

          1. select  OWNER,
           OBJECT_NAME,
           to_char(CREATED,'MM/DD/YYYY HH24:MI:SS') created,
           status
          from   dba_objects
          where OWNER not in ('SYS','SYSTEM')
          and OBJECT_TYPE='VIEW'
          order by OWNER,OBJECT_NAME
          
          
          1. select TEXT FROM DBA_VIEWS where OWNER ='owner_name' and VIEW_NAME= 'view_name'

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2023-03-07
            • 1970-01-01
            • 2017-03-29
            • 2021-12-29
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多