Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Help SQL Statement
Hi Ralf
> I think my view is very slow, and there are not many datas for an oracl=
e
> database. What must/can I do to run it fast ?
Wenn Du mit Oracle 7.3.xxx arbeitest kannst Du in SQL Plus
SET AUTOTRACE ON EXPLAIN
Aber dafür must Du den PLAN Table definiert haben sonst kriegst ne
Fehlermeldung.
Wenn das folgende describe bei Dir nicht das gleich bringt ,
dann erzeuge einen Table mit dem Namen und den Spalten wie in diesem
describe.
SQL> describe plan_table
Name Null? Typ ------------------------------- -------- ---- STATEMENT_ID VARCHAR2(30) TIMESTAMP DATE REMARKS VARCHAR2(80) OPERATION VARCHAR2(30) OPTIONS VARCHAR2(30) OBJECT_NODE VARCHAR2(30) OBJECT_OWNER VARCHAR2(30) OBJECT_NAME VARCHAR2(30) OBJECT_INSTANCE NUMBER(38) OBJECT_TYPE VARCHAR2(30) SEARCH_COLUMNS NUMBER(38) ID NUMBER(38) PARENT_ID NUMBER(38) POSITION NUMBER(38) OTHER LONG
Das mit dem EXPLAIN funktioniert dann so, daß in SQLPlus nach jedem
Statement der Execution Plan ausgegeben wird.
Diesen mußt Du aber interpretieren können. In diesem Plan wird angeg=
eben
welche Indizes Oracle während der Ausführung verwendet und
welche Operationen in welcher Reihenfolge ausgeführt werden.
Es gibt dafür auch tools die Dir das genauer erklären und die aus mei=
ner
Sicht sehr viel komfortabler sind als das spartanische SQL Plus.
Es gibt sogar ein shareware tool das gratis ist :
http:/www.toadsoft.com
Sonst gibts noch den SQLNavigator von http://www.quest.com ( mit einer Vertretung in Deutschland) den ich verwende. Mit beiden tools kannst Du das explain eines Statements sehr komfortable durchführen.
Servus.
Robo.
Received on Sat Jun 27 1998 - 10:55:01 CDT