[oracle] alle views describen

Pagina: 1
Acties:

  • Tjeerd
  • Registratie: Oktober 1999
  • Laatst online: 10-05 20:33

Tjeerd

Be Original, Be Yourself.

Topicstarter
Ik wil alle views die in een database zitten in een keer kunnen beschrijven, enkele dingen zoals de standaard views die Oracle biedt zijn niet genoeg (all_views bijv.) naar mijn weten.

Ik kan de sql-queries van de views achterhalen m.b.v. het statement:
SQL:
1
select text from all_views where view_name like '%LG%';


Maar die wil ik niet hebben, ik wil alle descriptions van de views. Met describe view_name_nnnn kan ik zo wel alle 80 views handmatig gaan doorlopen, maar ik wil in een keer kunnen doen iets als:

SQL:
1
describe (select view_name from all_views)


Zodat ik in een keer een beschrijving van alle views terug krijg. Dat moet toch mogelijk zijn?

[ Voor 9% gewijzigd door Tjeerd op 04-03-2005 10:37 ]

www.tjeerd.net - To repeat what others have said, requires education, to challenge it, requires brains.


Verwijderd

select 'describe '|| view_name from all_views;


en voer de output uit.

Nog mooier:
code:
1
2
3
4
5
6
7
8
set head off
set pagesize 0
spool views.sql
select 'describe '|| view_name  from all_views;
spool off
set head on
set pagesize 40
@@views.sql


:P

[ Voor 19% gewijzigd door Verwijderd op 04-03-2005 10:41 ]


  • Tjeerd
  • Registratie: Oktober 1999
  • Laatst online: 10-05 20:33

Tjeerd

Be Original, Be Yourself.

Topicstarter
Prachtig, dat is de oplossing die ik zocht idd bedankt voor het snelle antwoord. Krijg een mooi overzicht, maar is het ook nog mogelijk om tussen de uitvoer door een titel van de view erbij te zetten? Nu krijg ik alle views als volgt terug:

code:
1
2
3
4
5
6
Name                                      Null?    Type
----------------------------------------- -------- ----------------------------
HITDESCRIPTION                                     VARCHAR2(255)
COMMONVALUE                                         CHAR(1)
HITTYPE                                   NOT NULL CHAR(1)
EVALUE                                    NOT NULL FLOAT(126)

Maar ik wil de lijst als volgt (dus boven elke view description die ik terug krijg de titel van de view):
code:
1
2
3
4
5
6
7
8
[b]Dit is tabelnaam nnnnn:[/b]

Name                                      Null?    Type
----------------------------------------- -------- ----------------------------
HITDESCRIPTION                                     VARCHAR2(255)
COMMONGENE                                         CHAR(1)
HITTYPE                                   NOT NULL CHAR(1)
EVALUE                                    NOT NULL FLOAT(126)

[ Voor 7% gewijzigd door Tjeerd op 04-03-2005 10:58 ]

www.tjeerd.net - To repeat what others have said, requires education, to challenge it, requires brains.


Verwijderd

nounou, je vraagt wel veel hoor!! ;)

ff puzzelen hoor... ben er bijna uit

  • Tjeerd
  • Registratie: Oktober 1999
  • Laatst online: 10-05 20:33

Tjeerd

Be Original, Be Yourself.

Topicstarter
Ik dacht zelf iets met een soort van print $tabelnaam statement oid, maar ik zou m'n god niet weten of dat mogelijk is. En agz ik nog vrij vers bezig ben met Oracle of als iemand sowieso een goeie link heeft (ik heb momenteel deze en deze, maar dat is vrij basic allemaal).

[ Voor 12% gewijzigd door Tjeerd op 04-03-2005 11:14 ]

www.tjeerd.net - To repeat what others have said, requires education, to challenge it, requires brains.


Verwijderd

code:
1
2
3
4
5
6
7
spool braak.sql

select  'select ''Dit is tabelnaam '||view_name||' '' from dual;'
||chr(10)||chr(10)||'describe '|| view_name||chr(10)  from all_views;

spool off
@@braak.sql


Qua opmaak niet briljant, maar volgens is dit wat je wil..

Als Orakelaar kan je eigenlijk niet zonder asktom.oracle.com , metalink.oracle.com en otn.oracle.com . Daarnaast bv www.dba-village.com .

  • Tjeerd
  • Registratie: Oktober 1999
  • Laatst online: 10-05 20:33

Tjeerd

Be Original, Be Yourself.

Topicstarter
Dat was idd precies wat ik wilde, veel dank voor de info en behulpzaamheid :)

[ Voor 3% gewijzigd door Tjeerd op 04-03-2005 11:41 ]

www.tjeerd.net - To repeat what others have said, requires education, to challenge it, requires brains.


Verwijderd

geen dank, dit zijn gewoon leuke puzzeltjes :)
Pagina: 1