Du kan eksportere data fra en SQLite-database til en CSV-fil. Du kan eksportere en hel tabel eller resultaterne af en forespørgsel.
For at eksportere data til en CSV-fil skal du bruge .once
kommando, efterfulgt af filstien/navnet, som du ønsker, at filen skal skrives til.
Tabel til CSV-fil
Dette eksempel eksporterer indholdet af Kunstnerne tabel til en CSV-fil:
.header on .mode csv .once /Users/quackit/sqlite/dumps/artists.csv SELECT * FROM Artists;
Forklaring af koden:
- Først aktiverer vi overskrifter. Dette vil resultere i, at kolonnenavnene bliver brugt som overskrifter i CSV-filen. Dette er valgfrit. Hvis du deaktiverer overskrifter, vil CSV-filen simpelthen ikke indeholde nogen.
- Så aktiverer vi csv-tilstand (
.mode csv
- Næste linje (begynder med
.once
) får outputtet til at blive skrevet til CSV-filen. - Det sidste, vi skriver, er den faktiske forespørgsel (i dette tilfælde en
SELECT
). erklæring på bordet.).
Efter at have kørt den kode, oprettes en CSV-fil med følgende indhold:
ArtistId,ArtistName,Bio 1,"Joe Satriani", 2,"Steve Vai", 3,"The Tea Party", 4,Noiseworks, 5,"Wayne Jury", 6,"Mr Percival", 7,"Iron Maiden", 8,Atmasphere,"Australian jazz band centred around polyrhythms." 9,"Ian Moss", 10,Magnum, 13,Primus, 14,"Pat Metheny", 15,"Frank Gambale", 16,"Mothers of Invention",
Deltag forespørgsler
Du er ikke begrænset til kun at udskrive en enkelt tabel. Du kan udskrive enhver forespørgsel. Her er en forespørgsel, der vælger data fra to tabeller og udlæser resultatet i én CSV-fil.
.header on .mode csv .once /Users/quackit/sqlite/dumps/catalog.csv SELECT AlbumId, AlbumName, ArtistName FROM Artists AS a INNER JOIN Albums AS b ON a.ArtistId = b.ArtistId ORDER BY ArtistName;
Dette resulterer i en CSV-fil med følgende indhold:
AlbumId,AlbumName,ArtistName 1,Killers,"Iron Maiden" 2,Powerslave,"Iron Maiden" 12,"Somewhere in Time","Iron Maiden" 3,"Surfing with the Alien","Joe Satriani" 10,"Flying in a Blue Dream","Joe Satriani" 11,"Black Swans and Wormhole Wizards","Joe Satriani" 6,"Out of the Loop","Mr Percival" 7,"Suck on This",Primus 8,"Pork Soda",Primus 9,"Sailing the Seas of Cheese",Primus
Åbn CSV-filen automatisk
Du kan bruge .system
kommando til automatisk at åbne filen i din computers regnearksprogram, såsom Excel, OpenOffice, LibreOffice osv.
Placer .system
kode på den sidste linje (efter SELECT
udmelding). Sådan:
.header on .mode csv .once /Users/quackit/sqlite/dumps/catalog.csv SELECT AlbumId, AlbumName, ArtistName FROM Artists AS a INNER JOIN Albums AS b ON a.ArtistId = b.ArtistId ORDER BY ArtistName; .system open /Users/quackit/sqlite/dumps/catalog.csv
Den nøjagtige kode, du bruger, afhænger af dit operativsystem.
- I Windows skal du bruge
.system
efterfulgt af filnavnet. - På Mac skal du bruge
.system open
efterfulgt af filnavnet. - På Linux- og Unix-systemer skal du bruge
.system
efterfulgt af navnet på programmet for at åbne filen, efterfulgt af filnavnet. For eksempel.system libreoffice /dumps/file.csv
Dump en tabel eller database
Du kan også dumpe en tabel eller endda hele databasen i en ASCII-tekstfil ved hjælp af .dump
kommando.