U kunt de .output
. gebruiken of .once
dot-commando's om uw zoekopdrachtresultaten op te slaan in een tekstbestand bij gebruik van de SQLite CLI.
Het .once-commando
Als u slechts één zoekopdracht in een bestand wilt opslaan, gebruikt u de .once
commando.
De .once
opdracht geeft aan dat de volgende query naar het opgegeven bestand wordt verzonden. Alle verdere vragen worden teruggezet naar de standaarduitvoer (de console).
.headers on
.mode column
.once query_results.txt
SELECT * FROM Products;
De bovenstaande code voert de resultaten uit naar een tekstbestand met de naam query_results.txt in de huidige map. Gebruik het volledige pad als u een andere map moet specificeren.
In dit geval heb ik ook kolomkoppen ingeschakeld en de modus ingesteld op "kolom".
Dit is de inhoud van het tekstbestand:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
Het feit dat ik .once
. heb gebruikt betekent dat eventuele verdere vragen naar de console worden uitgevoerd.
Als u alle verdere vragen in het tekstbestand wilt opslaan, gebruikt u .output
.
Het .output-commando
De .output
commando specificeert dat alle verdere uitvoer naar het opgegeven bestand wordt verzonden.
Alle volgende zoekopdrachtresultaten worden toegevoegd aan de bestaande inhoud.
Neem bijvoorbeeld de volgende code:
.output query_results2.txt
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;
In dit geval heb ik twee queries uitgevoerd.
Dit is wat het resulterende tekstbestand bevat:
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
Het heeft dus de resultaten van beide zoekopdrachten opgenomen. We kunnen zien dat de tweede zoekopdracht is toegevoegd.
Merk op dat ik geen .headers on
of .mode column
in dit voorbeeld omdat ik dat al in mijn vorige voorbeeld had gespecificeerd. Die instellingen blijven in de huidige sessie totdat ze expliciet worden gewijzigd.
Uitvoer naar het scherm resetten
U kunt de volgende opdracht gebruiken om de uitvoer terug te zetten naar de standaarduitvoer (de console):
.output stdout
U kunt ook een willekeurig argument weglaten:
.output
Het tekstbestand automatisch openen
U kunt het .system
. gebruiken commando om uw tekstbestand te openen. De exacte syntaxis die u gebruikt, hangt af van uw systeem.
Zo opent u het vorige bestand op een Mac:
.system open query_results2.txt
Dit veronderstelt dat u zich in dezelfde map bevindt als het bestand. Anders moet je het volledige pad gebruiken.
Dit opent het bestand in de standaardtoepassing van het systeem voor het openen van tekstbestanden.
Op een Windows-systeem kan uw code er meer als volgt uitzien:
.system c:/data/query_results2.txt
Op Linux/Unix:
.system xdg-open query_results2.txt