Seja em um aplicativo de celular, em um site de e-commerce ou em um complexo ecossistema de Big Data, quase tudo o que você faz com uma informação se resume a quatro ações básicas. Essas ações formam o acrônimo CRUD, que significa Create, Read, Update e Delete (Criar, Ler, Atualizar e Excluir).
O CRUD é o padrão absoluto que define as funções essenciais para o armazenamento persistente de dados em sistemas de software.
Entendendo cada letra do CRUD
Para ilustrar, imagine que você está usando a agenda de contatos do seu smartphone:
- C – Create (Criar): É a ação de inserir uma nova informação no sistema.
- Exemplo prático: Quando você conhece alguém novo e salva o nome e o número de telefone dessa pessoa na sua agenda.
- R – Read (Ler): É a ação de consultar, buscar ou recuperar dados que já foram armazenados. É a operação mais executada na maioria dos sistemas.
- Exemplo prático: Quando você abre a agenda e pesquisa pelo nome “João” para ver qual é o número dele.
- U – Update (Atualizar): É a ação de modificar um dado que já existe no banco de dados.
- Exemplo prático: Quando o João muda de número de telefone e você edita o contato dele na agenda para salvar a informação nova.
- D – Delete (Excluir): É a ação de remover permanentemente uma informação do sistema.
- Exemplo prático: Quando você não fala mais com o João e decide apagar o contato dele do seu celular.
Como o CRUD se traduz na Tecnologia?
O conceito de CRUD é universal, mas ele ganha “nomes” diferentes dependendo de onde o Engenheiro de Dados ou Desenvolvedor está trabalhando.
A tabela abaixo mostra como essas quatro ações conceituais são traduzidas para a linguagem de Banco de Dados Relacional (SQL) e para o padrão de comunicação da web (APIs REST):
| Operação CRUD | O que faz | Comando SQL (Bancos de Dados) | Método HTTP (APIs Web) |
| Create | Insere novos dados | INSERT | POST |
| Read | Consulta dados existentes | SELECT | GET |
| Update | Modifica dados existentes | UPDATE | PUT ou PATCH |
| Delete | Remove dados | DELETE | DELETE |
Create (Criar/Inserir)
A operação de criação é feita através do comando INSERT. Aqui, passamos o nome da tabela, as colunas que queremos preencher e os respectivos valores.
-- Inserindo um novo aluno na tabela
INSERT INTO Alunos (nome_aluno, matricula, data_nasc)
VALUES ('Felipe Andrade', '2026105', '2004-08-20');
Read (Ler/Consultar)
A leitura é a alma do SQL, feita com o comando SELECT. Podemos buscar todos os dados de uma vez ou filtrar por critérios específicos.
-- Consultar todos os alunos cadastrados
SELECT * FROM Alunos;
-- Consultar apenas o nome de um aluno específico usando a matrícula
SELECT nome_aluno
FROM Alunos
WHERE matricula = '2026105';
Update (Atualizar/Alterar)
O comando UPDATE modifica registros existentes. Atenção: É vital usar a cláusula WHERE; caso contrário, você atualizará todos os alunos da tabela de uma só vez (o pesadelo de todo DBA).
-- Alterando a data de nascimento do Felipe
UPDATE Alunos
SET data_nasc = '2004-09-20'
WHERE matricula = '2026105';
Delete (Excluir/Remover)
A exclusão é feita com o comando DELETE. Assim como no Update, o uso do WHERE é obrigatório para garantir que você está apagando apenas o registro correto.
-- Removendo o aluno do sistema através do seu ID único
DELETE FROM Alunos
WHERE id_aluno = 5;
Em ambientes de produção, é comum utilizarmos o Soft Delete. Em vez de usar o comando
DELETEfísico, adicionamos uma coluna chamadaativo(booleano). Para “apagar” o usuário, apenas fazemos umUPDATE Alunos SET ativo = false. Isso mantém o histórico e a integridade dos dados para auditoria futura.
Por que o CRUD é tão importante?
Entender o CRUD é o primeiro passo para projetar qualquer aplicação. Se você modelou um banco de dados (como vimos nas fases Conceitual, Lógica e Física) e o seu sistema não consegue realizar pelo menos o Create e o Read, ele não tem utilidade prática.
Além disso, é através da limitação das operações CRUD que implementamos a segurança e o RBAC (Role-Based Access Control). Por exemplo, um estagiário pode ter permissão apenas de Read em uma tabela financeira, enquanto o gerente tem permissão completa de Create, Read, Update e Delete.
