SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Speichern Sie SQLite-Abfrageergebnisse in einer Textdatei

Sie können die .output verwenden oder .once dot-Befehle zum Speichern Ihrer Abfrageergebnisse in einer Textdatei, wenn Sie die SQLite-CLI verwenden.

Der .once-Befehl

Wenn Sie nur eine einzelne Abfrage in einer Datei speichern möchten, verwenden Sie den .once Befehl.

Die .once Befehl gibt an, dass die nächste Abfrage an die angegebene Datei gesendet wird. Alle weiteren Abfragen kehren zur Standardausgabe (der Konsole) zurück.

.headers on
.mode column
.once query_results.txt
SELECT * FROM Products;

Der obige Code gibt die Ergebnisse in eine Textdatei namens query_results.txt aus im aktuellen Verzeichnis. Verwenden Sie den vollständigen Pfad, wenn Sie ein anderes Verzeichnis angeben müssen.

In diesem Fall habe ich auch Spaltenüberschriften aktiviert und den Modus auf „Spalte“ gesetzt.

Hier ist der Inhalt der Textdatei:

ProductId   ProductName    Price     
----------  -------------  ----------
1           Widget Holder  139.5     
2           Widget Opener  89.7      
3           Bob's "Best"   374.2     
4           Blue Widget    63.0      

Die Tatsache, dass ich .once verwendet habe bedeutet, dass alle weiteren Anfragen an die Konsole ausgegeben werden.

Wenn alle weiteren Abfragen in der Textdatei gespeichert werden sollen, verwenden Sie .output .

Der .output-Befehl

Die .output Befehl gibt an, dass alle weiteren Ausgaben an die angegebene Datei gesendet werden.

Alle nachfolgenden Abfrageergebnisse werden an den vorhandenen Inhalt angehängt.

Nehmen Sie zum Beispiel den folgenden Code:

.output query_results2.txt
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;

In diesem Fall habe ich zwei Abfragen ausgeführt.

Hier ist, was die resultierende Textdatei enthält:

ProductId   ProductName    Price     
----------  -------------  ----------
1           Widget Holder  139.5     
2           Widget Opener  89.7      
3           Bob's "Best"   374.2     
4           Blue Widget    63.0      
ProductId   ProductName    Price     
----------  -------------  ----------
1           Widget Holder  139.5     
2           Widget Opener  89.7      

Daher wurden die Ergebnisse beider Abfragen eingeschlossen. Wir können sehen, dass die zweite Abfrage angehängt wurde.

Beachten Sie, dass ich .headers on nicht angeben musste oder .mode column in diesem Beispiel, weil ich das bereits in meinem vorherigen Beispiel angegeben hatte. Diese Einstellungen bleiben in der aktuellen Sitzung, bis sie ausdrücklich geändert werden.

Ausgabe auf dem Bildschirm zurücksetzen

Sie können den folgenden Befehl verwenden, um die Ausgabe auf die Standardausgabe (die Konsole) zurückzusetzen:

.output stdout

Alternativ können Sie einfach jedes Argument weglassen:

.output

Textdatei automatisch öffnen

Sie können das .system verwenden Befehl, um Ihre Textdatei zu öffnen. Die genaue Syntax, die Sie verwenden, hängt von Ihrem System ab.

So öffnen Sie die vorherige Datei auf einem Mac:

.system open query_results2.txt

Dies setzt voraus, dass Sie sich im selben Verzeichnis wie die Datei befinden. Andernfalls müssen Sie den vollständigen Pfad verwenden.

Dadurch wird die Datei in der Standardanwendung des Systems zum Öffnen von Textdateien geöffnet.

Auf einem Windows-System könnte Ihr Code eher so aussehen:

.system c:/data/query_results2.txt

Unter Linux/Unix:

.system xdg-open query_results2.txt