Es gibt viele Möglichkeiten, Daten aus Oracle zu exportieren und die Funktionalität zu automatisieren. Stellen Sie jedoch sicher, dass Sie genau wissen, wofür der Datenexport verwendet wird. Wenn es sich um Interop zwischen Systemen handelt, exportieren Sie es in ein Format, das Ihr empfangendes System verstehen kann. Wenn es sich um Sicherungszwecke handelt, wählen Sie die Methode exp / expdp (Datenpumpe), da bei einer Datenbanksicherung viel mehr als nur Daten gespeichert werden müssen. (Besser noch, verwenden Sie einfach RMAN. Aber ich kenne viele Datenbankadministratoren, die auch gerne regelmäßig vollständige DB-Exporte durchführen.)
Sie können eine Reihe von Werkzeugen verwenden, um dies zu erreichen, wobei TOAD das ist, was Ihnen in den Sinn kommt. Es verfügt über ein leistungsstarkes Datenexport-Tool, das die Zeitplanung unterstützt. Es ist eine kostenlose Version verfügbar, aber ich bin mir nicht sicher, ob sie über die Planungsfunktionalität verfügt. Einen Versuch wert.
Verwenden Sie alternativ die Tools, die Ihnen bereits zur Verfügung stehen: SQL * PLUS, PL / SQL und cron (oder den Windows Scheduler, wenn Sie Windows ausführen). Ein gutes Beispiel für das Schreiben einer PL / SQL-Routine, die eine Tabelle in eine CSV-Datei exportiert, finden Sie unter http: //asktom.oracle.com/pls/asktom/f? P = 100: 11: 0 :::: p11_question_id: 88212348059 . Wenn Sie eine Prozedur verwenden, können Sie sie über den Oracle Job Scheduler planen.
Sie können ähnliche Dinge auch nur mit SQL * PLUS ausführen (ohne eine Prozedur schreiben zu müssen), aber es ist nicht ganz so flexibel, aber für das, was Sie wollen, ist es möglicherweise genau das, was Sie brauchen. SQL * PLUS ist auch leicht skriptfähig, sodass Sie es jederzeit über cron / Windows Scheduler aufrufen können.
SQL * PLUS funktioniert für sich genommen sehr gut, um gute Berichte mit fester Breite zu erstellen, aber es ist auch möglich, HTML und CSV zu erstellen. XML erfordert wahrscheinlich eine Prozedur, aber ich bin hier kein Export, daher ist SQL * PLUS hier möglicherweise nicht perfekt (es wird jedoch in HTML ausgegeben, sodass dies möglicherweise gut genug ist). Denken Sie beim Exportieren nach Excel daran, dass die aktuellen Versionen XML als Dateiformat verwenden. Dies macht die Arbeit einfach (auf eine Weise) und auf andere Weise schmerzhaft (z. B. müssen Sie im Voraus wissen, wie viele Zeilen in der Ausgabedatei enthalten sein werden) ).
Unabhängig davon sollten Sie mit ein wenig Arbeit und der Kombination von zwei oder drei Tools in der Lage sein, Ihre Daten in einem beliebigen Format nach einem beliebigen Zeitplan zu exportieren.
Ich hoffe, das hilft.
SELECT FROM table
ist keine gültige SQL-Anweisung.r.row
Funktioniert nur, wenn die Auswahlliste der Abfrage ein Feld mit dem Namen enthältrow
. In den meisten Fällen möchten Sie mehr als eine Spalte exportieren. Es ist nicht sinnvoll, einen Fehler zu erkennen, der durch das Öffnen oder Schreiben einer Datei verursacht wurde, und zu versuchen, die Fehlermeldung in dieselbe Datei zu schreiben. Dies löst eine weitere Ausnahme aus und file_close, dbms_output_put_line und raise_error werden nicht ausgeführt.