Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre actif
    Comment avoir le source d'une vue au format text
    Salut,
    je cherche a avoir le source des vues afin de déterminer celles faisant référence à un texte donné

    J'avais pensé faire :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     SELECT  view_name, 'Views' ,  text
    FROM   dba_views
    where upper(text) like '%TOTAL_JOUR%'

    seulement voila, le champ "TEXT" est au format 'long'.

    Du coup, ma requête ne fonctionne pas.
    Je suppose le long représente un pointeur associé à 'TEXT_LENGTH' , mais je ne vois pas comment faire pour ma requête.

    Auriez-vous des idées?

  2. #2
    Membre éprouvé
    Bonjour,

    Quelque chose comme ceci:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    mhouri.world > select *
      2  from
      3  (
      4    select
      5        dbms_metadata.get_ddl('VIEW', view_name) txt
      6    from user_views
      7  ) ww
      8  where DBMS_LOB.INSTR (ww.txt, 'HOURI') != 0
      9  ;
     
      CREATE OR REPLACE FORCE VIEW "MHO"."TEST_VIEW" ("EMPNO", "ENAME", "JOB", "MGR
    ", "HIREDATE", "SAL", "COMM", "DEPTNO") AS
      select "EMPNO","ENAME","JOB","MGR","HIREDATE","SAL","COMM","DEPTNO" from emp
    where ename = 'HOURI'


    Bien à vous

    Mohamed Houri
    Bien Respectueusement
    www.hourim.wordpress.com

    "Ce qui se conçoit bien s'énonce clairement"

  3. #3
    Membre actif
    Merci,
    mais il semblerait que ma version de oracle (8.1) ne supporte pas cette façon de faire.

    Quelqu'un aurait une autre idée