Como usar o navegador do banco de dados para SQLite no Linux

Uma janela de terminal em um laptop PC Linux estilo Ubuntu.
Fatmawati Achmad Zaenuri / Shutterstock

O DB Browser for SQLite  permite visualizar e editar bancos de dados SQLite no Linux. Você pode projetar, criar e editar esses arquivos de banco de dados e dar uma olhada no funcionamento interno de outros aplicativos. Veja como usar esta GUI SQLite.

O projeto de banco de dados SQLite

 biblioteca e as ferramentas do banco de dados SQLite são um projeto de banco de dados de código aberto de código aberto (SQL) fenomenalmente bem-sucedido. Tão bem-sucedido, na verdade, pode justificadamente se denominar o mecanismo de banco de dados mais  amplamente implantado  do mundo.

Desde seu lançamento inicial em 2000, o SQLite teve uma aceitação absolutamente surpreendente. Ele está dentro de todos os telefones iPhone e Android e computadores com Windows 10 ou Mac. Ele também está em todos os navegadores de internet, incluindo Chrome, Firefox e Safari, assim como em inúmeros outros aplicativos.

O incrível alcance do banco de dados SQLite se deve à sua arquitetura. É uma biblioteca rápida e leve que é incorporada (ou  vinculada , no idioma do desenvolvedor) em outros aplicativos. O mecanismo de banco de dados se torna parte integrante do produto. Isso significa que você não precisa fornecer um servidor de banco de dados SQL externo, como  MySQLMariaDB ou  Microsoft SQL Server .

O SQLite também possui uma ferramenta de linha de comando para manipular bancos de dados, mas foi a biblioteca que o tornou um triunfo. Ter um mecanismo de banco de dados independente e capaz embutido em seu aplicativo remove muitos problemas. Ele simplifica as rotinas de instalação de seu aplicativo e reduz os requisitos mínimos de hardware para seu aplicativo.

Além disso, como o SQLite usa um único arquivo de plataforma cruzada para suas tabelas, índices e esquemas de banco de dados, todo o banco de dados pode ser movido para outro computador. Você pode até mesmo movê-lo para uma máquina executando um sistema operacional diferente, copiando um arquivo.

Na verdade, o formato de arquivo de banco de dados do SQLite é tão bem considerado que é um dos poucos recomendados pela  Biblioteca do Congresso  para armazenamento de dados de longo prazo.

Como o SQLite é uma biblioteca de desenvolvedor, no entanto, não há um front-end para ele, o que significa que não possui uma interface gráfica de usuário. É o aplicativo que usa a biblioteca que fornece a interface do usuário. O utilitário de linha de comando pode ser executado em um modo interativo, mas ainda não é uma GUI.

O DB Browser for SQLite  (DB4S) se encaixa perfeitamente. É uma ferramenta visual desenvolvida por outro projeto de código aberto para permitir a criação e manipulação de bancos de dados SQLite a partir de uma GUI.

DB Browser para SQLite

O DB Browser for SQLite existe (em uma encarnação ou outra) desde 2003 e passou por várias mudanças de nome. Anteriormente, era chamado de SQLite Browser, mas isso causava confusão. As pessoas pensavam que tinha sido escrito pela equipe do SQLite e, portanto, estavam encaminhando solicitações de recursos e consultas de suporte sobre DB4S para o SQLite.

Portanto, o SQLite Browser foi renomeado como DB Browser para SQLite. Você ainda verá referências ao nome antigo aqui e ali. Na verdade, o site do projeto ainda usa “sqlitebrowser” como domínio, e o nome antigo também é usado durante a instalação do DB4S.

Com DB4S você pode:

  • Crie bancos de dados.
  • Importe e exporte esquemas de banco de dados, tabelas e dados em formato SQL.
  • Importe e exporte tabelas e dados em formato CSV.
  • Crie, edite e exclua tabelas e índices.
  • Adicione, edite e exclua registros.
  • Navegue e pesquise os registros do banco de dados.
  • Edite e execute comandos SQL. Você pode ter certeza de que o comando faz o que você acha que vai fazer antes de embutir algum código SQL em seu aplicativo.
Recomendado:  Formatos HDR comparados: HDR10, Dolby Vision, HLG e Technicolor

Instalando o DB Browser para SQLite

Para instalar DB4S no Ubuntu, use o seguinte comando (novamente, observe que a instalação ainda usa o nome antigo):

sudo apt-get install sqlitebrowser

sudo apt-get install sqlitebrowser em uma janela de terminal

No Fedora, você digita:

sudo dnf install sqlitebrowser

sudo dnf instalar sqlitebrowser em uma janela de terminal

No Manjaro, usamos pacman:

sudo pacman -Sy sqlitebrowser

sudo pacman -Sy sqlitebrowser em uma janela de terminal

Importando um banco de dados de um arquivo SQL

Quando o DB4S é iniciado, ele não possui um banco de dados carregado nele. Veremos duas maneiras de importar dados e definições de tabelas de banco de dados, bem como criar seu próprio banco de dados.

DB Browser para SQLite no primeiro lançamento

Às vezes, você pode receber ou enviar um arquivo de despejo de banco de dados no formato SQL. Contém as instruções necessárias para recriar um banco de dados e inserir seus dados em um banco de dados.

Outro formato comum usado para importar definições e dados de tabela é o formato de valores separados por vírgula (CSV) . Você pode usar um site de geração de dados, como Database Test Data , para gerar dados fictícios para fins de prática. Você pode então exportar seus dados como SQL ou CSV.

Abaixo está um arquivo SQL que criamos naquele site. Depois de exportado, o editamos e adicionamos uma linha na parte superior do arquivo, que é necessária para o SQLite:

BEGIN TRANSACTION;

Um arquivo de despejo de banco de dados SQL no editor gedit

Em seguida, salvamos o arquivo. No DB4S, clicamos em Arquivo> Importar> Banco de dados do arquivo SQL.

Uma caixa de diálogo de seleção de arquivo é aberta para que possamos escolher nosso arquivo SQL. Em nosso exemplo, é chamado de “database_dump.sql” e está localizado na raiz de nosso diretório inicial.

Caixa de diálogo da seção de arquivo com "database_dump.sql" selecionado

Com o arquivo selecionado, clicamos em “Abrir” e uma caixa de diálogo para salvar o arquivo é aberta. Agora você precisa nomear seu novo banco de dados e decidir onde salvá-lo. Chamamos nosso “geekbase.sqlite3” e o estamos salvando em nosso diretório inicial.

Caixa de diálogo para salvar o arquivo com "geekbase.sqlite3" inserido como o nome do arquivo

Clique em “Salvar” quando estiver pronto para prosseguir. Identificamos nosso arquivo SQL de origem e nomeamos nosso novo banco de dados, portanto, o processo de importação pode começar agora. Depois de concluído, você verá a caixa de diálogo de notificação abaixo.

Importar caixa de diálogo de notificação concluída

Como adicionamos tabelas e dados ao banco de dados, somos solicitados a salvar essas alterações, então clicamos em “Salvar” para fazer isso.

Salvar caixa de diálogo de verificação de alterações

A janela principal do DB4S agora exibirá a estrutura de nosso banco de dados.

DB Browser para SQLite exibindo a estrutura do banco de dados

Duas tabelas foram criadas, embora houvesse apenas uma definição para uma no arquivo SQL. Isso ocorre porque o campo “id” foi definido como um campo de incremento automático. Ele será adicionado automaticamente sempre que um novo registro for adicionado ao banco de dados. SQLite cria uma tabela para controlar os campos de incremento automático.

Clique na guia “Browse Data” para ver seus registros recém-adicionados.

Registros de banco de dados no navegador de banco de dados para SQLite

Obviamente, o poder de um banco de dados está em sua capacidade de pesquisar e extrair registros. Com um banco de dados habilitado para SQL, usamos a linguagem SQL para fazer isso. Para começar, vá até a guia “Execute SQL”.

A guia "Execute SQL" no DB Browser for SQLite

Adicionamos o seguinte comando SQL:

SELECT * FROM account_details WHERE last_name LIKE "% ll%" ORDER BY estado

Isso pesquisará pessoas com um “l” duplo no sobrenome e os resultados serão classificados por estado. Clique na seta azul (parece um botão “Play”) para executar o comando SQL. Os resultados são exibidos no painel inferior.

Temos quatro registros que contêm “l” duplo no sobrenome e são classificados em ordem alfabética por estado, de Arizona a Wisconsin.

Importando uma tabela de banco de dados de um arquivo CSV

Também podemos importar tabelas de arquivos CSV adequados. A maneira mais conveniente de fazer isso é ter os nomes dos campos da tabela no arquivo CSV como a primeira linha do texto. Abaixo está uma pequena seção de um arquivo CSV.

Recomendado:  Artemis 1 da NASA está (finalmente) a caminho da Lua

Parte superior de um arquivo CSV com nomes de campos de tabela como a primeira linha

A primeira linha contém os nomes dos campos: first_name, last_name, created, email, state e ID. As outras linhas contêm os valores dos dados para cada registro que será adicionado à tabela. Estes são os mesmos dados de antes; apenas o formato do arquivo mudou.

Ao importar dados CSV, você deve criar um banco de dados vazio para que tenha algo para o qual importá-lo. Para isso, clique em “Novo Banco de Dados” na barra de ferramentas.

Novo banco de dados na barra de ferramentas do navegador do banco de dados para SQLite

Uma caixa de diálogo para salvar o arquivo é aberta. Nomeie seu novo banco de dados e decida onde salvá-lo. Vamos chamar nosso “howtogeek.sqlite3” e salvá-lo em nosso diretório inicial.

Salvar a caixa de diálogo com o nome de arquivo howtogeek.sqlite3 inserido

Quando a caixa de diálogo “Editar definição da tabela” for exibida, clique em “Cancelar”. De volta à janela principal do DB4S, clique em Arquivo> Importar> Tabela do arquivo CSV. Uma caixa de diálogo de seleção de arquivo é aberta, na qual você pode escolher seu arquivo CSV.

Caixa de diálogo de seleção de arquivo com o arquivo users.csv selecionado

Em nosso exemplo, é chamado de “users.csv” e está localizado na raiz de nosso diretório inicial. Clique em “Abrir” e uma caixa de diálogo de visualização aparecerá para mostrar como o DB4S interpretará os dados CSV.

Caixa de diálogo de visualização de dados mostrando os dados CSV

O nome do arquivo é usado como o nome da tabela. Você pode editar isso se quiser, apenas certifique-se de marcar a caixa de seleção ao lado de “Nomes de coluna na primeira linha”.

Clique em “OK” (está fora da tela na imagem acima). Os dados são importados e, se tudo estiver bem, você deverá ver a caixa de diálogo “Importação Concluída”; Clique OK.”

Importar caixa de diálogo de notificação concluída

Clique em “Browse Data” e você verá os dados importados.

Dados importados na tabela de usuários no navegador do banco de dados para SQLite

Ainda temos um pequeno ajuste a fazer. Clique na guia “Estrutura do Banco de Dados”, selecione o nome da tabela e clique em “Modificar Tabela” na barra de ferramentas.

Painel de estrutura do banco de dados no navegador do banco de dados para SQLite

Na caixa de diálogo “Editar definição da tabela”, selecione a caixa de seleção “AI” (incremento automático) no campo “id”.

Caixa de diálogo Editar Definição de Tabela no DB Browser para SQLite

A caixa de seleção “PK” (Chave primária) é selecionada automaticamente para você; Clique OK.” Isso define o campo “id” para ser incrementado automaticamente. Agora podemos adicionar um novo registro ao banco de dados para verificar se está funcionando.

Clique na guia “Executar SQL” e digite o seguinte SQL no painel superior (observe que estamos fornecendo valores para todos os campos, exceto “id”):

INSERIR EM "usuários" 
("first_name", "last_name", "created", "email", "state")
VALORES ('Dave', 'McKay', '12/08/2020', 'dave@llk.com', 'Idaho');

Execute o painel SQL no DB Browser para SQLite

Clique na seta azul (que parece um botão Play) para executar o comando SQL. Clique em “Browse Data” e vá até o final. Você deve ver seu registro recém-adicionado com um campo “id” fornecido automaticamente, contendo um valor que é um maior do que o valor “id” mais alto anterior.

Novo registro com campo "id" auto-incrementado

Criando um banco de dados manualmente

Se você não tiver um arquivo SQL ou CVS para importar, terá que criar seu banco de dados manualmente. Para começar, clique em “Novo banco de dados” e uma caixa de diálogo para salvar o arquivo aparecerá. Digite o nome do seu novo banco de dados e onde deseja salvá-lo.

Chamamos o nosso “geeksrock.sqlite3” e o estamos salvando no diretório “Documentos”. Depois de nomear seu banco de dados e navegar até o local em que deseja salvá-lo, clique em “Salvar”.

Caixa de diálogo Salvar arquivo com banco de dados chamado geeksrock.sqlite3 inserido

Quando solicitado a confirmar suas escolhas, clique em “Salvar” mais uma vez.

Uma caixa de diálogo Salvar confirmação no navegador do banco de dados para SQLite

A caixa de diálogo “Editar definição da tabela” é exibida. Nomeie sua nova mesa (chamamos de “águias”) e clique em “Adicionar campo”. Agora você pode digitar um nome para o campo e selecionar o tipo de informação que ele conterá no menu suspenso “Tipo”.

Recomendado:  O que era o BeOS e por que as pessoas o adoram?

Caixa de diálogo Editar Definição de Tabela DB Browser para SQLite

Adicionamos um campo de texto para conter o nome da águia e um campo numérico real (ponto flutuante) para conter a envergadura.

Caixa de diálogo Editar Definição de Tabela com dois campos adicionados à nova tabela DB Browser para SQLite

As caixas de seleção e outras opções ao lado de cada campo permitem que você adicione os seguintes comportamentos:

  • NN (não nulo): quando esta opção é definida, o campo não pode ser deixado em branco. Se você tentar adicionar um registro sem fornecer um valor para este campo, ele será rejeitado.
  • PK  (chave primária): um campo (ou grupo de campos) que fornece um identificador exclusivo para os registros na tabela. Pode ser um valor numérico simples, como os campos inteiros de incremento automático que abordamos acima. Em uma tabela de contas de usuário, porém, pode ser um nome de usuário. Só pode haver uma chave primária em uma tabela.
  • AI  (Auto-Incrementação): Os campos numéricos podem ser preenchidos automaticamente, com o próximo valor mais alto não utilizado. Usamos isso no campo “id” no exemplo que cobrimos acima.
  • U (Único): Este campo em cada registro deve conter um valor único, o que significa que não pode haver duplicatas neste campo na tabela.
  • Padrão: um valor padrão será fornecido se for adicionado um registro que não tenha valor neste campo.
  • Verificar: Um campo pode ter uma verificação executada quando um registro é adicionado. Por exemplo, você pode verificar se o valor em um campo de número de telefone tem pelo menos 10 caracteres.
  • Collation: Sqlite pode usar métodos diferentes de comparação de strings. O padrão é BINARY. Outras opções são NOCASE, que não diferencia maiúsculas de minúsculas e RTRIM, que ignora o espaço em branco à direita. Na maioria dos casos, você pode deixar o valor padrão.
  • Chave estrangeira: um campo ou grupo de campos em um registro que deve corresponder a uma chave em outra tabela. Por exemplo, em um banco de dados de ferramentas de workshop, você pode ter uma tabela de ferramentas individuais e outra tabela de categorias de ferramentas. Se as categorias de ferramenta forem “martelo”, “chave de fenda” e “chave de fenda”, você não pode adicionar um registro do tipo “cinzel”.

Clique em “OK” depois de adicionar os campos desejados. Depois que seu banco de dados for criado e sua primeira tabela adicionada, você pode adicionar alguns registros.

Na guia “Execute SQL”, usamos a instrução SQL INSERT várias vezes para adicionar alguns registros à tabela.

Uma instrução INSERT SQL na guia Execute SQL no DB Browser for SQLite

Também podemos usar a guia “Browse Data” para ver nossos novos registros.

Guia Navegar Dados com novos registros listados DB Browser para SQLite

Se você preferir adicionar novos registros através da interface do usuário, clique em “Novo Registro” na barra de ferramentas. Você pode então inserir os valores para o novo registro sem entender SQL.

Bancos de dados de outros aplicativos

Você também pode usar DB4S para ver os bancos de dados SQLite que pertencem a outros aplicativos. Examinar a estrutura ou o conteúdo de outros bancos de dados pode ser instrutivo (ou apenas interessante). É importante que você não faça alterações nos bancos de dados pertencentes a outros aplicativos, ou você pode afetar adversamente a operação desse aplicativo.

Vejamos um dos bancos de dados SQLite que o Firefox cria e mantém. Clique em “Abrir banco de dados” na barra de ferramentas e uma caixa de diálogo para abrir o arquivo aparecerá. O Firefox mantém seus arquivos em um diretório chamado “firefox”, que está dentro de um diretório oculto chamado “.mozilla” que fica em seu diretório inicial.

Em nossa máquina de teste, encontramos os bancos de dados SQLite do Firefox neste local: “home / dave / .mozilla / firefox / vpvuy438.default-release”; o seu estará em um local semelhante.

Caixa de diálogo de abertura de arquivo com o arquivo coockies.sqlite destacado

Vamos abrir o banco de dados “cookies.sqlite”, então destacamos o arquivo e clique em “Abrir”. Com o banco de dados aberto, você pode examinar sua estrutura de tabela, definições de campo e dados.

Dados de cookies dentro do banco de dados cookies.sqlite do Firefox DB Browser para SQLite

Aqui, podemos ver uma variedade de cookies do Google e do YouTube.

Exportar fornece insights

Exportar um banco de dados (clicando em Arquivo> Exportar> Banco de dados para arquivo SQL) também é útil. Observando o dump SQL de um banco de dados, você pode ver todo o esquema do banco de dados renderizado em instruções SQL.