Sie können Daten aus einer SQLite-Datenbank in eine CSV-Datei exportieren. Sie können eine ganze Tabelle oder die Ergebnisse einer Abfrage exportieren.
Um Daten in eine CSV-Datei zu exportieren, verwenden Sie den .once
Befehl, gefolgt vom Dateipfad/-namen, in den die Datei geschrieben werden soll.
Tabelle in CSV-Datei
Dieses Beispiel exportiert den Inhalt der Artists Tabelle in eine CSV-Datei:
.header on .mode csv .once /Users/quackit/sqlite/dumps/artists.csv SELECT * FROM Artists;
Erklärung des Codes:
- Zuerst aktivieren wir Header. Dadurch werden die Spaltennamen als Überschriften in der CSV-Datei verwendet. Dies ist optional. Wenn Sie Kopfzeilen deaktivieren, enthält die CSV-Datei einfach keine.
- Dann aktivieren wir den CSV-Modus (
.mode csv
- Die nächste Zeile (beginnend mit
.once
) bewirkt, dass die Ausgabe in die CSV-Datei geschrieben wird. - Das letzte, was wir schreiben, ist die eigentliche Abfrage (in diesem Fall ein
SELECT
Aussage auf dem Tisch.).
Nachdem dieser Code ausgeführt wurde, wird eine CSV-Datei mit folgendem Inhalt erstellt:
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",
Anfragen verbinden
Sie sind nicht darauf beschränkt, nur eine einzelne Tabelle auszugeben. Sie können eine beliebige Abfrage ausgeben. Hier ist eine Abfrage, die Daten aus zwei Tabellen auswählt und das Ergebnis in eine CSV-Datei ausgibt.
.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;
Es entsteht eine CSV-Datei mit folgendem Inhalt:
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
CSV-Datei automatisch öffnen
Sie können das .system
verwenden Befehl zum automatischen Öffnen der Datei im Tabellenkalkulationsprogramm Ihres Computers wie Excel, OpenOffice, LibreOffice usw.
Platzieren Sie das .system
Code in der letzten Zeile (nach dem SELECT
Erklärung). So:
.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
Der genaue Code, den Sie verwenden, hängt von Ihrem Betriebssystem ab.
- Verwenden Sie unter Windows
.system
gefolgt vom Dateinamen. - Verwenden Sie auf dem Mac
.system open
gefolgt vom Dateinamen. - Verwenden Sie auf Linux- und Unix-Systemen
.system
gefolgt vom Namen des Programms zum Öffnen der Datei, gefolgt vom Dateinamen. Beispiel:.system libreoffice /dumps/file.csv
Dump eine Tabelle oder Datenbank
Sie können auch eine Tabelle oder sogar die gesamte Datenbank mit .dump
in eine ASCII-Textdatei ausgeben Befehl.