Pular para o conteúdo principal

Guia para iniciantes em SQLite

Aprenda o básico de bancos de dados SQLite: dos comandos ponto do SQLite a um exemplo de aplicações práticas usando a interface de linha de comando.
Atualizado 17 de set. de 2026  · 10 min lido

Explorar com IA

ChatGPTClaudePerplexity

O que é SQLite?

Se você já conhece sistemas de bancos de dados relacionais, é provável que tenha ouvido falar de pesos-pesados como MySQL, SQL Server ou PostgreSQL. Mas o SQLite é outro SGBDR útil, muito simples de configurar e operar, que traz vários diferenciais em relação a outros bancos relacionais. Entre eles:

  • Sem necessidade de servidor: não há processos de servidor para iniciar, parar ou configurar. Também não é preciso administradores de banco para criar instâncias ou gerenciar permissões de acesso de usuários.
  • Arquivos de banco simples: um banco de dados SQLite é um único arquivo comum de disco que pode ser armazenado em qualquer pasta. Isso também facilita o compartilhamento, já que os arquivos do banco podem ser copiados para um pendrive ou enviados por email sem complicação.
  • Tipagem manifesta: a maioria dos mecanismos SQL usa tipagem estática. Ou seja, você só pode armazenar valores do mesmo tipo de dado associado a uma coluna específica. Já o SQLite usa tipagem manifesta, que permite armazenar dados de qualquer tipo em qualquer coluna, independentemente do tipo declarado da coluna. Observe que há algumas exceções, como colunas de chave primária integer, que só podem armazenar inteiros.

Como quase tudo, o SQLite também tem algumas limitações em relação a outros mecanismos. Por exemplo, ele não oferece Right ou Full Outer Joins, e o fato de ser sem servidor pode ser uma desvantagem para segurança e proteção contra mau uso dos dados. Ainda assim, é uma ferramenta poderosa e muito útil em diversas situações. Por exemplo, usei um banco SQLite recentemente em um projeto de análise de mídias sociais para armazenar uma $edge \space list^{1}$ de milhões de usuários do Twitter de forma simples e eficiente.

Neste tutorial para iniciantes, vou mostrar como trabalhar com um banco de dados SQLite. Vamos ver a instalação do SQLite, criação e operações com tabelas, comandos ponto do SQLite e como usar consultas SQL simples para manipular os dados dentro de um banco SQLite.

$^{1}$ Uma edge list, ou lista de adjacência, é um conjunto de listas não ordenadas usado para representar um grafo em análise de redes. Cada lista descreve o conjunto de vizinhos de um nó ou vértice no grafo.

Como instalar e configurar o SQLite

Primeiro, vamos ver como colocar o SQLite no seu computador. É muito simples. No tutorial SQLite with Python do Sayak Paul, você verá que existe uma ferramenta GUI chamada DB Browser for SQLite que ajuda você a começar facilmente. Mas, para variar, vou mostrar como usar a ferramenta de linha de comando, que muitas vezes eu até prefiro.

Se você usa Windows, acesse este site e baixe o arquivo sqlite-tools-win32-x86-3270200.zip. Depois de descompactar a pasta, você deve ver estes três arquivos:

arquivos do sqlite

Em seguida, iniciar o SQLite na linha de comando é tão simples quanto clicar no aplicativo sqlite3, que vai abrir a janela do terminal assim:

janela do sqlite3

Você vai notar que, por padrão, o SQLite usa um banco de dados transitório em memória. Na maioria dos casos, você não vai querer isso. Em vez disso, vamos criar um novo banco usando o comando ponto .open seguido do nome que você quer dar ao arquivo do banco (veja abaixo):

novo banco no sqlite3

Pronto, você criou um novo banco. É essencial adicionar .db após o nome desejado para criar o arquivo. Nomeamos o banco de Tweet_Data.db porque vou usar tweets para popular as tabelas.

Criando tabelas

Com o banco criado, podemos partir para a tabela de tweets. Há duas formas de fazer isso. A primeira é importar um arquivo .csv e transformá-lo em uma tabela. Para isso, coloque o SQLite em modo csv com o comando ponto .mode seguido de csv e use o comando ponto .import, que recebe um arquivo (neste caso um csv na mesma pasta, mas pode ser qualquer csv do seu computador se você usar o caminho completo) e o nome da tabela que você escolher. Você também pode exibir os cabeçalhos das colunas usando o comando ponto .headers seguido de on. (Veja abaixo)

importar csv no sqlite3

Depois disso, você pode usar o comando .tables para listar todas as tabelas disponíveis em um arquivo de banco, bem como o comando .schema seguido do nome da tabela para exibir sua estrutura. Além disso, você pode executar uma consulta simples como SELECT $$ FROM Table_Name* para verificar se os dados estão lá.

estrutura da tabela no sqlite3

Além de criar tabelas importando arquivos como csv, você também pode criar tabelas com CREATE TABLE e depois inserir novas linhas com INSERT INTO. No exemplo a seguir, você verá como criar uma tabela do zero e inserir duas linhas.

Observação: na linha de comando do SQLite, se quiser continuar a escrever a mesma consulta na linha seguinte, como faço no exemplo, basta pressionar Enter quando quiser uma nova linha. A consulta só será avaliada ao pressionar Enter com ponto e vírgula no final.

criar tabela no sqlite3

Exportando do SQLite

Se em algum momento você quiser exportar o resultado de uma consulta para um arquivo externo, como um csv, também dá para fazer isso facilmente no SQLite. Para uma exportação limpa para csv, use um processo semelhante ao da importação. Primeiro, .header seguido de on e .mode seguido de csv. Depois, use o comando ponto .output seguido do nome do arquivo csv desejado e, por fim, execute a consulta SQL que você quer exportar e saia do SQLite com o comando .exit. Vamos exportar para csv a nova tabela que criamos no passo anterior.

output no sqlite3

Aqui está o csv recém-criado com os dados de Sample_Tweets_2.

novo csv

Atualizando tabelas

Além de criar e exportar tabelas, você também pode usar as instruções SQL UPDATE/SET e DROP TABLE para atualizar linhas em uma tabela ou excluir uma tabela inteira. No exemplo a seguir, vamos atualizar o segundo tweet na tabela de brinquedo Sample_Tweets_2.

update/set e drop table

Agora vamos nos despedir da tabela de brinquedo Sample_Tweets_2 e removê-la do arquivo do banco usando DROP TABLE:

drop table

Usando um banco SQLite para lidar com dados do Twitter

Agora que você já domina o essencial de como operar um banco SQLite e manipular tabelas, o próximo passo é extrair informações úteis com consultas SQL. Vou mostrar algumas consultas relativamente simples que usei em um projeto de análise de mídias sociais no Twitter. Pense nisso como um mini estudo de caso para ilustrar uma aplicação real de um banco SQLite.

Vamos começar com algo simples: encontrar todos os nomes de usuário (screen names) únicos no Twitter na tabela Sample_Tweets. No projeto em que usei esses tweets, era essencial identificar todos os usuários únicos de quem coletei tweets, pois eu precisava buscar seus seguidores para criar a edge list que mencionei no início do tutorial.

usuários únicos no banco

26.860 usuários únicos no banco. Uma amostra excelente, considerando que os temas monitorados eram localização de sites e tradução. Vamos ver os 20 usuários que mais tuitaram na amostra usando uma consulta SQL um pouco mais complexa (retweets excluídos):

top 20 usuários

Veja só: o maior número de tweets é de um bot! Como acabou se revelando, o último da lista, UweMuegge, é um bom influenciador segundo várias métricas de rede que calculei para o projeto. No entanto, ele definitivamente não foi o mais importante.

Por fim, vamos dar uma olhada em alguns tweets que o UweMuegge escreveu usando outra consulta SQL:

tweets de uwemuegge

Parecem dois temas principais: vagas de tradução e conferências de tradução. Faz sentido que pessoas da área o sigam no Twitter.

Outra coisa que salta aos olhos na captura acima é uma das limitações da interface de linha de comando do SQLite. Se você tiver campos de texto longos, a exibição não fica bonita e a leitura é difícil. Por isso, vale a pena usar o DB Browser for SQLite nesse caso.

Resumo

Neste tutorial, você aprendeu a criar bancos SQLite e a manipular tabelas usando comandos ponto e instruções SQL. Além disso, viu um pequeno estudo de caso real em que usei um banco SQLite para lidar com dados do Twitter. Bastante coisa—parabéns!

Vale destacar que bancos SQLite brilham quando combinados com R e Python. Você pode manipular bancos SQLite em Python com o módulo sqlite3 (se quiser saber mais, veja o tutorial SQLite with Python) ou em R usando RSQLite. Na verdade, a edge list dos seguidores dos usuários do Twitter que mencionei antes está armazenada em um banco SQLite que criei no RSQLite, anexando a rede de seguidores de cada usuário a uma tabela. Nessa etapa do projeto, o uso de SQLite foi vital, já que coisas como quedas de energia ou atualizações automáticas do Windows podem desligar o computador à força e te obrigar a recomeçar a coleta do zero. Isso pode levar cerca de 4 semanas por conta dos limites de taxa da API do Twitter, então recomeçar do 0 é bem indesejável. Salvando as redes de seguidores em um banco SQLite ao longo do processo, mesmo que seu computador desligue à força, você retoma a coleta a partir do usuário seguinte ao último salvo no banco—um belo ganho de tempo.

Esse é apenas um exemplo de como bancos SQLite podem ser uma ferramenta fantástica no arsenal de um cientista de dados. Recomendo que você pesquise mais sobre SQLite e SQL além do que foi coberto aqui. Continue aprendendo: o céu é o limite!

Se quiser aprender mais SQL, faça o curso Introduction to Relational Databases in SQL da DataCamp.

Tópicos
SQL
Ciência de dados
Data Analysis

Aprenda mais sobre SQL

Curso

Manipulação de dados em SQL

4 h
335K
Domine consultas SQL complexas no PostgreSQL para responder várias perguntas de ciência de dados e preparar conjuntos de dados robustos.
Ver detalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow
Relacionado

Tutorial

Exemplos e tutoriais de consultas SQL

Se você deseja começar a usar o SQL, nós o ajudamos. Neste tutorial de SQL, apresentaremos as consultas SQL, uma ferramenta poderosa que nos permite trabalhar com os dados armazenados em um banco de dados. Você verá como escrever consultas SQL, aprenderá sobre
Sejal Jaiswal's photo

Sejal Jaiswal

15 min

Tutorial

Tutorial de visão geral do banco de dados SQL

Neste tutorial, você aprenderá sobre bancos de dados em SQL.
DataCamp Team's photo

DataCamp Team

3 min

Tutorial

Tutorial do MySQL: Um guia abrangente para iniciantes

Descubra o que é o MySQL e como começar a usar um dos sistemas de gerenciamento de banco de dados mais populares.
Javier Canales Luna's photo

Javier Canales Luna

15 min

SQLAlchemy_Tutorial.

Tutorial

Tutorial de SQLAlchemy com exemplos

Aprenda a acessar e executar consultas SQL em todos os tipos de bancos de dados relacionais usando objetos Python.
Abid Ali Awan's photo

Abid Ali Awan

13 min

Tutorial

Introdução aos acionadores SQL: Um guia para desenvolvedores

Saiba como usar os acionadores SQL para automatizar tarefas, manter a integridade dos dados e melhorar o desempenho do banco de dados. Experimente exemplos práticos como os comandos CREATE, ALTER e DROP no MySQL e no Oracle.
Oluseye Jeremiah's photo

Oluseye Jeremiah

13 min

Tutorial

Tutorial de como executar consultas SQL em Python e R

Aprenda maneiras fáceis e eficazes de executar consultas SQL em Python e R para análise de dados e gerenciamento de bancos de dados.
Abid Ali Awan's photo

Abid Ali Awan

13 min

Ver MaisVer Mais