Você pode exportar dados de um banco de dados SQLite para um arquivo CSV. Você pode exportar uma tabela inteira ou os resultados de uma consulta.
Para exportar dados para um arquivo CSV, use o
.once
comando, seguido pelo caminho/nome do arquivo no qual você gostaria que o arquivo fosse gravado. Tabela para arquivo CSV
Este exemplo exporta o conteúdo do arquivo Artists tabela para um arquivo CSV:
.header on .mode csv .once /Users/quackit/sqlite/dumps/artists.csv SELECT * FROM Artists;
Explicação do código:
- Primeiro, habilitamos os cabeçalhos. Isso fará com que os nomes das colunas sejam usados como cabeçalhos no arquivo CSV. Isso é opcional. Se você desativar os cabeçalhos, o arquivo CSV simplesmente não conterá nenhum.
- Então ativamos o modo csv (
.mode csv
- A próxima linha (começando com
.once
) faz com que a saída seja gravada no arquivo CSV. - A última coisa que escrevemos é a consulta real (neste caso, um
SELECT
declaração na mesa.).
Depois de executar esse código, um arquivo CSV é criado com o seguinte conteúdo:
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",
Participar de consultas
Você não está limitado a apenas produzir uma única tabela. Você pode gerar qualquer consulta. Aqui está uma consulta que seleciona dados de duas tabelas e gera o resultado em um arquivo 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;
Isso resulta em um arquivo CSV com o seguinte conteúdo:
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
Abrir o arquivo CSV automaticamente
Você pode usar o
.system
comando para abrir automaticamente o arquivo no programa de planilhas do seu computador, como Excel, OpenOffice, LibreOffice, etc. Coloque o
.system
código na última linha (após o SELECT
demonstração). Assim:.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
O código exato que você usa dependerá do seu sistema operacional.
- No Windows, use
.system
seguido pelo nome do arquivo. - No Mac, use
.system open
seguido pelo nome do arquivo. - Em sistemas Linux e Unix, use
.system
seguido pelo nome do programa para abrir o arquivo, seguido pelo nome do arquivo. Por exemplo,.system libreoffice /dumps/file.csv
Descarregar uma tabela ou banco de dados
Você também pode despejar uma tabela ou até mesmo todo o banco de dados em um arquivo de texto ASCII usando o
.dump
comando.