Toon posts:

[oracle] pause in een lange lijst

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een probleempje.
In een database vraag ik met de volgende query alle tabellen op:
select table_name from all_tables;

Nu schiet er een hele lijst aanvoorbij maar ik kan de bovenste niet meer zien. Is er ook een mogelijkheid om een pause in de resultset te zetten??

Verwijderd

in sqlplus neem ik aan? --> spool
(of gebruik where clause of...)

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Naar mijn weten kan het niet, wat wel kan is:
  1. De buffer vergroten in SQL*Plus (zie menu "environment", welke je exact moet hebben weet ik niet uit mijn hoofd).
  2. Voeg aan het statement toe "WHERE ROWNUM < XXX". XXX is uiteraard een integer.
  3. Gebruik spooling, dus voor uitvoer van het statement "SPOOL c:\mijnlog.txt" en na uitvoer "SPOOL OFF" en vervolgens de tekstfile bekijken.
  4. Kleinere resultset verkrijgen door bv. toevoegen van "WHERE TABLE_NAME LIKE UPPER('%<deel_van_naam_van_tabel>%')" waarbij <deel_van_naam_van_tabel> uiteraard vervangen dient te worden door een deel van de naam de gezochte tabel. De procenttekens mogen blijven staan, die betekenen ongeveer hetzelfde als * in MsDos.
Succes ermee :)

Verwijderd

Op donderdag 04 juli 2002 12:11 schreef Draaiucc het volgende:
Ik heb een probleempje.
In een database vraag ik met de volgende query alle tabellen op:
select table_name from all_tables;

Nu schiet er een hele lijst aanvoorbij maar ik kan de bovenste niet meer zien. Is er ook een mogelijkheid om een pause in de resultset te zetten??
Misschien heb je iets aan dit script:


set linesize 110
set pagesize 90
ttitle "DATADICTIONARY tabellen"
break on report on TABELNAAM skip 1
spool datadict.lis
select substr(table_name,1,35) TABELNAAM
, substr(column_name,1,35) KOLOMNAAM
, data_type
, decode (data_type,'NUMBER',data_precision,'VARCHAR2',data_length,'DATE',data_length) LENGTE
, data_scale DECIMALEN
, decode(nullable,'N','not null','Y','null') NUL
from user_tab_columns
order by 1,6
/
spool off

Dit geeft een opsomming van de tabellen en de kolommen en heu precisie(dat statement met decode moet achter elkaar door lopen).

Je moet wel als eigenaar van de tabellen inloggen onder sqlplus. De output wordt in het bestand datadict.lis gezet. Dat kun je in b.v. Word inlezen en als je een klein lettertype kiest wordt netjes de hele pagina gevuld.



Succes.