SQLite Intermédio a Avançado

Neste curso, aprofunde-se em técnicas avançadas de SQLite. Domine constraints, indexação, joins, subqueries, transactions, triggers, views, full-text search, JSON, backups, ajuste de PRAGMA, CTEs, window functions e muito mais!

Banco de DadosSQLite

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Introdução

Amplie suas habilidades em SQLite por 17 laboratórios guiados sobre consultas mais ricas, integridade, automação, busca especializada, análise, backup, ajuste e manutenção. Cada laboratório usa um pequeno banco local para executar SQL ou comandos CLI e examinar o esquema, as linhas, o plano ou o estado resultante.

O curso cobre muitos tópicos intermediários e avançados, mantendo um formato passo a passo. Você avança de constraints e índices para joins, subqueries, transactions, triggers, views, FTS5, CTEs, window functions e comandos operacionais sem projetar uma única aplicação grande.

O que você aprenderá

  • Manter integridade com chaves estrangeiras, constraints CHECK, chaves compostas e ações ON CONFLICT
  • Criar e remover índices, inspecionar EXPLAIN QUERY PLAN, reconstruir índices, executar ANALYZE e recuperar espaço com VACUUM
  • Combinar e resumir dados com inner e left joins, joins múltiplos, agregações, GROUP BY, HAVING e subqueries correlacionadas
  • Controlar mudanças com BEGIN, COMMIT, ROLLBACK, savepoints e constraints que rejeitam saldos inválidos
  • Automatizar registros de auditoria com triggers e criar views simples, com joins, agregadas e atualizáveis por trigger
  • Criar tabelas virtuais FTS5 e usar buscas MATCH, por prefixo, coluna e operadores booleanos
  • Armazenar JSON como texto e expor uma função SQL Python json_extract personalizada para extrair, filtrar e atualizar
  • Exportar e restaurar dumps SQL, configurar PRAGMAs, usar tabelas temporárias, escrever CTEs simples e recursivas e calcular rankings e totais acumulados com janelas

Para quem é este curso

Este curso é destinado a desenvolvedores, analistas e estudantes de bancos de dados que já sabem criar bancos e tabelas SQLite e escrever SELECT, INSERT, UPDATE e DELETE básicos. Ele oferece contato guiado com várias funções específicas do SQLite antes de aplicá-las em um projeto maior.

Pré-requisitos: Recomendam-se fundamentos da CLI do SQLite e SQL, incluindo criação de tabelas, chaves primárias, filtros simples e CRUD. Python básico ajuda no laboratório JSON, mas não é necessário na maior parte do curso.

Ambiente de aprendizagem: Os 17 laboratórios guiados, todos de nível iniciante, são executados em uma VM desktop Ubuntu 22.04, principalmente com sqlite3. Há 84 etapas e 101 verificações automáticas; o laboratório JSON também cria e executa um script Python com os módulos padrão sqlite3 e json.

Perguntas frequentes

Quão avançado é o curso na prática?

Os tópicos vão além do SQL básico e incluem CTEs recursivas, funções de janela, FTS5, triggers e planos. Porém, os 17 laboratórios são classificados como iniciantes e oferecem comandos passo a passo em bancos pequenos, priorizando prática guiada de recursos sobre engenharia independente.

O laboratório JSON usa as funções JSON nativas do SQLite?

Não. Ele armazena JSON como texto, define em Python uma função json_extract e a registra em uma conexão SQLite de Python. Isso difere de praticar operadores ou funções JSON integrados ao SQLite.

Que tipo de backup é realizado?

O laboratório usa .dump na CLI para criar um dump SQL textual e o restaura enviando esse SQL a um banco novo. Não cobre API de backup online, cópia binária segura, backups agendados nem recuperação pontual.

O curso prepara para ajustar um banco de produção?

Ele introduz índices, planos, modo de journal, chaves estrangeiras, cache, verificações de integridade, ANALYZE e VACUUM. Não mede cargas reais nem cobre escritores concorrentes, conexões da aplicação, testes de falha ou monitoramento de produção.

Professor

labby
Labby
Labby is the LabEx teacher.