Data z databáze SQLite můžete exportovat do souboru CSV. Můžete exportovat celou tabulku nebo výsledky dotazu.
Chcete-li exportovat data do souboru CSV, použijte .once
příkaz a za ním cesta/název souboru, do kterého chcete soubor zapsat.
Tabulka do souboru CSV
Tento příklad exportuje obsah Umělci tabulky do souboru CSV:
.header on .mode csv .once /Users/quackit/sqlite/dumps/artists.csv SELECT * FROM Artists;
Vysvětlení kódu:
- Nejprve povolíme záhlaví. To povede k tomu, že názvy sloupců budou použity jako záhlaví v souboru CSV. Toto je nepovinné. Pokud zakážete záhlaví, soubor CSV jednoduše nebude obsahovat žádné.
- Potom povolíme režim csv (
.mode csv
- Další řádek (začínající
.once
) způsobí zapsání výstupu do souboru CSV. - Poslední věc, kterou píšeme, je skutečný dotaz (v tomto případě
SELECT
prohlášení na stole.).
Po spuštění tohoto kódu se vytvoří soubor CSV s následujícím obsahem:
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",
Připojit se k dotazům
Nejste omezeni pouze na výstup jedné tabulky. Můžete zadat jakýkoli dotaz. Zde je dotaz, který vybere data ze dvou tabulek a výsledek převede do jednoho souboru CSV.
.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;
Výsledkem je soubor CSV s následujícím obsahem:
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
Automaticky otevřít soubor CSV
Můžete použít .system
příkaz k automatickému otevření souboru v tabulkovém procesoru vašeho počítače, jako je Excel, OpenOffice, LibreOffice atd.
Umístěte .system
kód na posledním řádku (za SELECT
prohlášení). Takhle:
.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
Přesný kód, který použijete, bude záviset na vašem operačním systému.
- V systému Windows použijte
.system
následovaný názvem souboru. - Na Macu použijte
.system open
následovaný názvem souboru. - V systémech Linux a Unix použijte
.system
následuje název programu pro otevření souboru a za ním název souboru. Například.system libreoffice /dumps/file.csv
Vypsat tabulku nebo databázi
Můžete také vypsat tabulku nebo dokonce celou databázi do textového souboru ASCII pomocí .dump
příkaz.