Aula 04 - SQL na prática: INSERT, SELECT, UPDATE e DELETE
Material organizado para estudo progressivo, com leitura confortável, recursos complementares e navegação para a próxima etapa da disciplina.
Resumo
As quatro operações do CRUD
CRUD é o acrônimo das quatro operações básicas que qualquer sistema faz sobre dados: Create, Read, Update e Delete. Em SQL, essas operações são executadas com os comandos INSERT, SELECT, UPDATE e DELETE.
Leitura pensada para estudo, consulta e revisão. Use a navegação lateral para alternar entre etapas da aula.
Estudo
Conteúdo interativo — HTML importado
Aula 04 - SQL na prática: INSERT, SELECT, UPDATE e DELETE
Abra o material em tela cheia para estudar com conforto, sem sair da disciplina.
Aula 04 - SQL na prática: INSERT, SELECT, UPDATE e DELETE
100%
Carregando conteúdo interativo...
Aula 04 · SQL na prática — Guilda dos Dados 🗄️ Aula 04 · Banco de Dados SQL na prática — a Guilda dos Dados – 100% + ◀ 1 / 15 ▶ ⛶ ⚔️ Banco de Dados · SQL SQL na prática INSERT, SELECT, UPDATE e DELETE — as quatro operações do CRUD, aprendidas comandando o registro de uma guilda de aventureiros. Com foco no SELECT. 15 telas ~35 min Pré-req.: tabelas & chaves ✦ Interativo Navegue com ◀ ▶ ou as setas do teclado · ⛶ para tela cheia Por que isto importa Todo sistema faz quatro coisas com dados Cadastrar, consultar, alterar e apagar. Esse ciclo tem um nome — CRUD — e em SQL ele vira quatro comandos. Na nossa guilda, cada um é uma ação do mestre sobre o registro de aventureiros. INSERT Create 🛡️ Recrutar aventureiro SELECT Read 🔎 Consultar o registro UPDATE Update ⬆️ Treinar / evoluir DELETE Delete 🚪 Dispensar ✗ Sem banco de dados Uma planilha por aventureiro, tudo copiado à mão "Quem tem nível > 15?" vira busca linha por linha Um erro de digitação e o dado se perde ✓ Com SQL Uma única fonte de verdade: a tabela Uma linha de SELECT responde a pergunta O banco garante regras e consistência O nosso mundo O registro: a tabela aventureiros Antes de comandar, conheça o terreno. Toda operação vai agir sobre esta tabela. Cada linha é um aventureiro; cada coluna, um atributo. id nome classe nivel ouro reino 🔑id é a chave primária: um número único que identifica cada aventureiro sem ambiguidade. 📐Cada coluna tem um tipo: nome e reino são texto; nivel e ouro são números. Create · recrutar INSERT — adicionar uma linha Para recrutar, você declara a tabela, lista as colunas e informa os valores na mesma ordem. recrutar.sql📋 copiar INSERT INTO aventureiros (nome, classe, nivel, ouro, reino) VALUES ('Selena', 'Maga', 14, 280, 'Eldoria'); ①INSERT INTO tabela — onde a linha vai entrar. ②(colunas) — quais campos você vai preencher. ③VALUES (…) — os valores, na mesma ordem das colunas. ④Texto vai entre 'aspas simples'; números, não. O id costuma ser gerado sozinho. Simulador · INSERTrecrute um aventureiro e veja a linha surgir nome classe MagaGuerreiroArqueiroCurandeiraLadino nivel ouro ▶ Executar ↺ Reset id nome classe nivel ouro Preencha os campos e clique em Executar. Read · o coração da aula SELECT — ler o registro É o comando que você mais vai usar na vida. Ele responde perguntas sobre os dados sem alterá-los. Comece escolhendo quais colunas quer ver. consulta_basica.sql📋 copiar -- todas as colunas de todas as linhas SELECT * FROM aventureiros; -- só as colunas que interessam SELECT nome, nivel FROM aventureiros; ①SELECT — o que trazer. O * significa "todas as colunas". ②FROM tabela — de onde os dados vêm. ③Listar colunas por nome deixa a consulta mais rápida e clara que *. 💡 SELECT nunca muda os dados.Ele só lê. Pode rodar quantas vezes quiser, sem medo. Simulador · projeçãoescolha as colunas que aparecem Read · filtrar WHERE — só as linhas que importam Sem WHERE, o SELECT traz tudo. Com ele, você impõe uma condição e o banco devolve apenas as linhas que a satisfazem — como escolher só os aventureiros aptos à missão. filtros.sql📋 copiar SELECT nome, nivel FROM aventureiros WHERE nivel >= 15; SELECT * FROM aventureiros WHERE reino = 'Eldoria' AND ouro > 200; SELECT * FROM aventureiros WHERE nome LIKE 'A%'; -- começa com A Simulador · WHEREmonte a condição e veja as linhas acenderem coluna nivelouroclassereinonome operador valor ▶ Executar↺ Reset Defina a condição e execute. Read · ordenar & limitar ORDER BY e LIMIT — ranking da guilda O banco não garante ordem nenhuma por padrão. ORDER BY ordena o resultado; LIMIT corta nas primeiras N linhas. Juntos, respondem "os 3 mais ricos". ranking.sql📋 copiar -- os 3 aventureiros com mais ouro, do maior para o menor SELECT nome, ouro FROM aventureiros ORDER BY ouro DESC LIMIT 3; Simulador · ORDER BY + LIMITordene o ranking ordenar por ouronivelnome direção DESC (maior→menor)ASC (menor→maior) LIMIT: 3 ▶ Executar↺ Reset Read · resumir Funções de agregação — números sobre o grupo Às vezes você não quer as linhas, quer um resumo: quantos são, a média, o máximo. As funções agregadas condensam muitas linhas em um único valor. resumos.sql📋 copiar SELECT COUNT(*) FROM aventureiros; -- quantos aventureiros? SELECT AVG(nivel) FROM aventureiros; -- nível médio -- quantos por classe? (agrupando) SELECT classe, COUNT(*) FROM aventureiros GROUP BY classe; Simulador · agregaçõesclique numa função e veja o valor Escolha uma agregação acima. Read · consulta completa Playground: monte a sua consulta Junte tudo. Escolha colunas, filtre, ordene e limite — o SQL se escreve sozinho e o registro responde ao vivo. Esta é a ordem em que o banco realmente executa: FROM tabela→ WHERE filtra linhas→ SELECT escolhe colunas→ ORDER BY ordena→ LIMIT corta ★ Playground de consultasSELECT ao vivo SELECT · colunas WHERE (sem filtro)nivelouroclassereino ORDER BY (sem ordem)nivelouronome ASCDESC LIMIT: — ▶ Executar consulta↺ Reset Monte a consulta e clique em Executar. Update · treinar UPDATE — alterar linhas existentes Para evoluir um aventureiro, você diz o que muda (SET) e — crucial — em quais linhas (WHERE). treinar.sql📋 copiar UPDATE aventureiros SET nivel = nivel + 3 WHERE id = 2; ①UPDATE tabela — quem será alterado. ②SET coluna = valor — o que muda. Dá para usar o valor atual: nivel + 3. ③WHERE — filtra as linhas afetadas. Sem ele, todas mudam. Simulador · UPDATEtreine um aventureiro e veja o nível subir WHERE id = SET nivel = nivel + ▶ Executar↺ Reset Escolha o id e execute o UPDATE. Delete · dispensar DELETE — remover linhas Dispensar aventureiros apaga linhas de vez. O WHERE aqui é ainda mais importante: ele decide o que sobrevive. dispensar.sql📋 copiar -- dispensa quem ainda é iniciante DELETE FROM aventureiros WHERE nivel < 8; Simulador · DELETEremova por condição — com reset seguro DELETE onde nivel < ▶ Executar↺ Restaurar Defina o limite e execute (dá pra restaurar). Perigo · armadilhas Os erros que custam caro Três descuidos aparecem o tempo todo. Guarde-os como regras de sobrevivência da guilda. 💥 UPDATE ou DELETE sem WHERE DELETE FROM aventureiros; apaga toda a guilda. Sem WHERE, a operação atinge todas as linhas. Sempre selecione as linhas com um SELECT antes de alterar ou apagar. 🎯 Off-by-one no limitenivel > 15 exclui quem tem exatamente 15. Precisava incluir? Use >=. O limite certo depende da pergunta. ❝❞ Aspas trocadasTexto vai entre 'aspas simples'. Números, sem aspas. nivel = '15' pode funcionar, mas confunde tipos. 🐢 SELECT * em produçãoTrazer todas as colunas de tabelas enormes é lento. Peça só o que vai usar. 🧮 = com NULL= NULL nunca dá verdadeiro. Para campos vazios use IS NULL. Prove seu valor Quiz da guilda Pergunta 1 de 5 Próxima ▶ Acertos: 0 / 5 Missão prática Escreva a consulta Desafio: "Liste o nome e o ouro dos aventureiros do reino de Eldoria com mais de 200 de ouro, do mais rico para o menos rico." Monte mentalmente e depois revele. Peças que você precisa combinar: colunas: nome, ouro tabela: aventureiros filtro: reino + ouro ordem: ouro DESC 🔓 Revelar resposta missao.sql📋 copiar SELECT nome, ouro FROM aventureiros WHERE reino = 'Eldoria' AND ouro > 200 ORDER BY ouro DESC; ✅ Por que assim?Duas condições unidas por AND (reino exato + ouro acima de 200); ORDER BY ouro DESC coloca o mais rico no topo. Se a missão pedisse "pelo menos 200", trocaríamos > por >=. 🏆 Missão completa Você comanda o CRUD Quatro comandos, um registro vivo. Leve estes pontos com você: ◆SELECT lê sem alterar — combine WHERE, ORDER BY, LIMIT e agregações para responder qualquer pergunta. ◆INSERT cria, UPDATE altera, DELETE remove — e os dois últimos exigem WHERE. ◆Teste com SELECT antes de qualquer UPDATE ou DELETE. Comando CRUD Quando usar INSERT Create Adicionar uma nova linha ao registro. SELECT Read Consultar e resumir dados sem alterá-los. O mais usado. UPDATE Update Mudar valores de linhas já existentes. DELETE Delete Remover linhas definitivamente. Prof. · Banco de Dados · 2025 — aula interativa "Guilda dos Dados". Reaproveite trocando o conteúdo dos slides.