Du kan bruge .output
eller .once
dot-kommandoer for at gemme dine forespørgselsresultater i en tekstfil, når du bruger SQLite CLI.
.once-kommandoen
Hvis du kun vil gemme en enkelt forespørgsel i en fil, skal du bruge .once
kommando.
.once
kommando angiver, at den næste forespørgsel vil blive sendt til den angivne fil. Eventuelle yderligere forespørgsler vil vende tilbage til standardoutputtet (konsollen).
.headers on
.mode column
.once query_results.txt
SELECT * FROM Products;
Ovenstående kode udsender resultaterne til en tekstfil kaldet query_results.txt i den aktuelle mappe. Brug den fulde sti, hvis du skal angive en anden mappe.
I dette tilfælde aktiverede jeg også kolonneoverskrifter og indstillede tilstanden til "kolonne".
Her er indholdet af tekstfilen:
ProductId ProductName Price
---------- ------------- ----------
1 Widget Holder 139.5
2 Widget Opener 89.7
3 Bob's "Best" 374.2
4 Blue Widget 63.0
Det faktum, at jeg brugte .once
betyder, at eventuelle yderligere forespørgsler vil blive udsendt til konsollen.
Hvis du har brug for at alle yderligere forespørgsler skal gemmes i tekstfilen, skal du bruge .output
.
.output-kommandoen
.output
kommando angiver, at alt yderligere output vil blive sendt til den angivne fil.
Eventuelle efterfølgende forespørgselsresultater vil blive tilføjet det eksisterende indhold.
Tag følgende kode for eksempel:
.output query_results2.txt
SELECT * FROM Products;
SELECT * FROM Products LIMIT 2;
I dette tilfælde kørte jeg to forespørgsler.
Her er, hvad den resulterende tekstfil indeholder:
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
Så det har inkluderet resultaterne fra begge forespørgsler. Vi kan se, at den anden forespørgsel blev tilføjet.
Bemærk, at jeg ikke behøvede at angive .headers on
eller .mode column
i dette eksempel, fordi jeg allerede havde specificeret det i mit tidligere eksempel. Disse indstillinger forbliver i den aktuelle session, indtil de eksplicit ændres.
Nulstil output til skærmen
Du kan bruge følgende kommando til at vende tilbage til standardoutputtet (konsollen):
.output stdout
Alternativt kan du blot udelade ethvert argument:
.output
Åbn automatisk tekstfilen
Du kan bruge .system
kommando for at åbne din tekstfil. Den nøjagtige syntaks, du bruger, afhænger af dit system.
Sådan åbner du den forrige fil på en Mac:
.system open query_results2.txt
Dette forudsætter, at du er i samme mappe som filen. Ellers bliver du nødt til at bruge hele stien.
Dette åbner filen i systemets standardapplikation til åbning af tekstfiler.
På et Windows-system kan din kode se mere sådan ud:
.system c:/data/query_results2.txt
På Linux/Unix:
.system xdg-open query_results2.txt