Ich habe eine Batch-Datei läuft einige SQL für mich durch sqlplus. Der Befehl lautet wie folgt:Batch + Oracle, deaktivieren Sie die Antwort, aber immer noch Ausführungszeit
sqlplus user/[email protected] @file.sql param1 param2 ... >> LOG.txt
das Internet Surfen finde ich heraus, war, dass es möglich war, Zeit zu erhalten, indem diese Zeilen in die SQL-Datei hinzufügen:
SET TIMING ON
...sql operation...
SET TIMING OFF
Das gibt mir eine wirklich schönes Ergebnis in der Log-Datei, da jetzt sieht es wie folgt aus:
SQL*PLUS INFORMATION
COPYRIGHT
INFORMATION ABOUT THE CONNECTION
OLD/NEW STATEMENT
RESULTS
ROWS SELECTED
EXECUTION TIME
DISCONNECT MESSAGE
ich mag Ausgang dieses wirklich, aber die Ergebnisse sind zu viel. Oft möchte ich die Ausführungszeit von langen Abfragen testen, aber das Durchlaufen der Ergebnisse ist wirklich eine Verschwendung von Bandbreite. Es macht auch meine Protokolldatei riesig und unpraktisch, ich hätte lieber ein kleines Protokoll mit all den anderen Informationen.
habe ich versucht, andere Header hinzugefügt, wie:
TERMOUT
SPOOL
Aber die erste alle Ausgaben entfernen, einschließlich der Zeit und der alte/neue Anweisung und die zweite Kopien nur die Ergebnisse in eine andere Datei ohne Ändern Sie alles in meine Protokolldatei.
Ich dachte, um meine Anfrage in einen PLSQL-Block zu wickeln, aber dann wäre ich nicht in der Lage, die TIME-Header nicht mehr richtig zu verwenden?
Wie auch immer, wenn Sie wissen, eine Kopfzeile/andere Komponente, die mein Problem lösen würde, fühlen sich frei zu teilen!
Danke für Ihre Zeit.
Groß Antwort, vielen Dank Herr. Arbeitete perfekt für mich! – Moufett