📘 Bem-vindo ao Manual Digital
O MySQL Workbench é uma das ferramentas utilizadas para trabalhar com
bancos de dados MySQL. Neste material você encontrará um passo a passo
completo para aprender desde os conceitos iniciais até a criação e
manipulação de um pequeno banco de dados.
O objetivo não é decorar comandos. O objetivo é compreender
o que está sendo feito, por que está sendo feito e qual resultado
será produzido.
💡 Como estudar este conteúdo?
Não leia apenas os exemplos. Abra o MySQL Workbench e execute os
procedimentos enquanto acompanha o manual.
A melhor maneira de aprender banco de dados é praticando.
01. MySQL, MySQL Workbench, SQL e Banco de Dados
📌 Antes de começar
Antes de utilizar o MySQL Workbench, é importante entender alguns
conceitos que aparecem constantemente durante as aulas de Banco de
Dados.
🗄️ O que é Banco de Dados?
📖 Definição
Banco de dados é um conjunto organizado de informações que podem ser
armazenadas, consultadas, alteradas e excluídas.
Um sistema escolar, por exemplo, pode possuir informações sobre
alunos, professores, cursos, disciplinas e matrículas.
⚙️ O que é um SGBD?
Sistema Gerenciador de Banco de Dados
SGBD é o software responsável por gerenciar o banco de dados.
Ele permite criar estruturas, armazenar informações, realizar
consultas, controlar acessos e executar operações sobre os dados.
🐬 O que é MySQL?
MySQL
MySQL é um sistema gerenciador de banco de dados relacional.
Ele utiliza SQL para permitir que aplicações e usuários trabalhem
com os dados armazenados.
🖥️ O que é MySQL Workbench?
MySQL Workbench
O MySQL Workbench é uma ferramenta gráfica utilizada para trabalhar
com bancos de dados MySQL.
Por meio dele podemos criar bancos, tabelas, relacionamentos,
executar comandos SQL, consultar informações e visualizar estruturas
de banco de dados.
⌨️ O que é SQL?
SQL — Structured Query Language
SQL é a linguagem utilizada para trabalhar com bancos de dados
relacionais.
Com SQL podemos criar estruturas, inserir dados, consultar, alterar
e excluir informações.
🔎 Resumindo
| Termo |
O que significa? |
Função |
| Banco de Dados |
Conjunto organizado de informações |
Armazenar dados |
| SGBD |
Sistema Gerenciador de Banco de Dados |
Gerenciar os dados |
| MySQL |
SGBD relacional |
Gerenciar bancos MySQL |
| MySQL Workbench |
Ferramenta gráfica |
Facilitar o trabalho com MySQL |
| SQL |
Linguagem |
Manipular bancos de dados |
💡 Pense desta forma
MySQL é responsável pelo gerenciamento do banco.
MySQL Workbench oferece uma interface para
facilitar o trabalho.
SQL é utilizado para enviar instruções ao banco.
02. Instalando o MySQL
📌 Definição
Para utilizar o MySQL Workbench de forma completa, normalmente
precisamos ter acesso a um servidor MySQL.
Portanto, é importante diferenciar a ferramenta gráfica do servidor
responsável pelo banco de dados.
🌐 Site oficial
Site:
https://www.mysql.com/
📝 Passo a passo
- Acesse o site oficial do MySQL.
- Localize a área de downloads.
- Procure pelos produtos relacionados ao MySQL.
- Localize o instalador apropriado para seu sistema.
- Faça o download.
- Execute o instalador.
- Siga as etapas apresentadas.
- Configure o servidor MySQL.
- Defina o usuário e a senha.
- Finalize a instalação.
- Abra o MySQL Workbench.
⚠️ Atenção
O MySQL Workbench não deve ser confundido com o servidor MySQL.
Se o Workbench estiver instalado, mas não existir um servidor MySQL
disponível, você não conseguirá executar consultas normalmente.
03. Abrindo o MySQL Workbench
📖 O que acontece ao abrir?
Ao iniciar o MySQL Workbench, normalmente será apresentada uma área
contendo as conexões disponíveis.
Uma conexão representa o acesso a um servidor MySQL.
💻 Exemplo
MySQL Local
Servidor: localhost
Porta: 3306
Usuário: root
💡 O que significa localhost?
localhost significa que o servidor está sendo
executado no próprio computador.
04. Criando uma Conexão
📌 Definição
Uma conexão permite que o MySQL Workbench se comunique com um
servidor MySQL.
📝 Informações da conexão
-
Connection Name:
nome utilizado para identificar a conexão.
-
Hostname:
endereço do servidor.
-
Port:
porta utilizada pelo servidor.
-
Username:
usuário utilizado para acesso.
-
Password:
senha utilizada para autenticação.
💻 Exemplo
Connection Name: MySQL Local
Hostname: localhost
Port: 3306
Username: root
📖 Entendendo cada informação
localhost representa o computador local.
3306 é uma porta normalmente utilizada pelo MySQL.
root é um usuário que pode existir em uma
instalação local, dependendo da configuração realizada.
⚠️ Cuidado com a senha
Nunca compartilhe senhas reais de banco de dados em atividades,
prints, arquivos públicos ou repositórios.
05. O que é um Schema?
📌 Definição
Em ambientes MySQL, o termo schema é utilizado para
representar uma estrutura de banco de dados.
Dentro dele podemos possuir tabelas, views, procedures, funções e
outros objetos.
💻 Exemplo
escola
│
├── alunos
├── professores
├── cursos
├── disciplinas
└── matriculas
📖 Explicação
Neste exemplo, escola representa o banco de dados e
as tabelas armazenam diferentes grupos de informações.
06. Criando um Banco de Dados
📌 Comando CREATE DATABASE
O comando CREATE DATABASE cria um novo banco de
dados.
💻 Exemplo
CREATE DATABASE escola;
📝 Passo a passo
- Abra sua conexão.
- Abra uma nova aba SQL.
- Digite o comando.
- Execute o comando.
- Atualize a lista de schemas.
💡 Boa prática
Escolha nomes que representem claramente a finalidade do banco.
Exemplos:
escola
loja
biblioteca
clinica
empresa
07. Selecionando o Banco — USE
📌 Definição
O comando USE informa ao MySQL qual banco será
utilizado.
USE escola;
💻 Exemplo completo
CREATE DATABASE escola;
USE escola;
📖 Por que utilizar USE?
Imagine que o servidor possui vários bancos:
escola
loja
empresa
biblioteca
O comando USE informa em qual deles você deseja trabalhar.
08. Criando uma Tabela
📌 O que é uma tabela?
Uma tabela é utilizada para organizar informações dentro do banco de
dados.
Ela é formada por colunas e registros.
💻 Exemplo visual
ALUNOS
id | nome | idade
---|-------|------
1 | Ana | 17
2 | João | 18
3 | Maria | 17
📖 Entenda
Coluna: representa uma característica.
Registro: representa uma informação cadastrada.
Linha: representa um registro completo.
💻 Criando a tabela
CREATE TABLE alunos (
id INT PRIMARY KEY AUTO_INCREMENT,
nome VARCHAR(100),
idade INT
);
💡 Observe a estrutura
Cada campo possui:
nome do campo
+
tipo de dado
+
regras opcionais
09. Tipos de Dados
📌 Definição
O tipo de dado determina qual tipo de informação poderá ser
armazenada em determinada coluna.
| Tipo |
Utilização |
Exemplo |
| INT |
Números inteiros |
18 |
| VARCHAR |
Textos |
Marcelo |
| DATE |
Datas |
2026-08-17 |
| DECIMAL |
Valores decimais |
150.50 |
| TEXT |
Textos maiores |
Descrição |
| BOOLEAN |
Verdadeiro ou falso |
TRUE |
⚠️ Escolha o tipo correto
Não utilize VARCHAR para absolutamente tudo.
O tipo de dado deve representar corretamente a informação que será
armazenada.
10. Chave Primária — PRIMARY KEY
📌 Definição
A chave primária identifica de forma única cada registro de uma
tabela.
💻 Exemplo
id INT PRIMARY KEY AUTO_INCREMENT
📖 Entendendo o comando
id é o nome do campo.
INT define que o campo armazenará números inteiros.
PRIMARY KEY define a chave primária.
AUTO_INCREMENT permite gerar números
automaticamente.
💻 Exemplo
1 → Ana
2 → João
3 → Maria
4 → Carlos
💡 Regra importante
O identificador deve permitir diferenciar um registro dos demais.
11. Inserindo Dados — INSERT
📌 Definição
O comando INSERT adiciona novos registros em uma
tabela.
💻 Exemplo
INSERT INTO alunos
(nome, idade)
VALUES
('Ana', 17);
💻 Inserindo vários registros
INSERT INTO alunos
(nome, idade)
VALUES
('Ana', 17),
('João', 18),
('Maria', 17),
('Carlos', 19);
📖 O que aconteceu?
O MySQL recebeu novos registros para a tabela
alunos.
Como o campo id utiliza AUTO_INCREMENT, o próprio
banco pode gerar os identificadores.
12. Consultando Dados — SELECT
📌 Definição
O comando SELECT permite consultar informações
armazenadas no banco.
💻 Consultar tudo
SELECT * FROM alunos;
💻 Consultar campos específicos
SELECT nome, idade
FROM alunos;
💻 Consultar apenas o nome
SELECT nome
FROM alunos;
💡 O que significa o * ?
O asterisco representa todas as colunas.
13. Filtrando Dados — WHERE
📌 Definição
O comando WHERE permite estabelecer condições para
selecionar registros.
💻 Buscar alunos com 18 anos
SELECT *
FROM alunos
WHERE idade = 18;
💻 Buscar uma pessoa específica
SELECT *
FROM alunos
WHERE nome = 'Ana';
💻 Operadores
| Operador |
Significado |
| = |
Igual |
| <> |
Diferente |
| > |
Maior que |
| < |
Menor que |
| >= |
Maior ou igual |
| <= |
Menor ou igual |
14. Alterando Dados — UPDATE
📌 Definição
O comando UPDATE altera informações existentes em
uma tabela.
💻 Exemplo
UPDATE alunos
SET idade = 18
WHERE id = 1;
📖 Entendendo
UPDATE alunos indica a tabela.
SET idade = 18 indica o novo valor.
WHERE id = 1 indica qual registro será alterado.
🚨 ATENÇÃO
Cuidado ao utilizar UPDATE sem WHERE.
Um comando sem uma condição adequada pode alterar vários registros.
15. Excluindo Dados — DELETE
📌 Definição
O comando DELETE remove registros de uma tabela.
💻 Exemplo
DELETE FROM alunos
WHERE id = 3;
🚨 MUITO CUIDADO
Nunca execute um DELETE sem compreender qual registro será removido.
Antes de excluir, faça uma consulta utilizando SELECT para confirmar
o registro.
✅ Forma mais segura para conferir
SELECT *
FROM alunos
WHERE id = 3;
Depois de confirmar o registro:
DELETE FROM alunos
WHERE id = 3;
16. Alterando a Estrutura — ALTER TABLE
📌 Definição
O comando ALTER TABLE permite modificar a estrutura
de uma tabela existente.
➕ Adicionando uma coluna
ALTER TABLE alunos
ADD email VARCHAR(150);
✏️ Modificando uma coluna
ALTER TABLE alunos
MODIFY nome VARCHAR(150);
📖 Quando utilizar?
Utilize ALTER TABLE quando precisar modificar a estrutura de uma
tabela que já existe.
17. DROP — Excluindo Estruturas
📌 Definição
O comando DROP pode remover estruturas do banco de
dados.
💻 Exemplo
DROP TABLE alunos;
🚨 ATENÇÃO MÁXIMA
Esse comando pode remover a tabela e os dados armazenados nela.
Não execute DROP apenas para "testar" em um banco que contenha
informações importantes.
18. Executando Comandos SQL
📖 Passo a passo
- Abra o MySQL Workbench.
- Abra uma conexão.
- Abra uma aba SQL.
- Digite o comando.
- Revise o comando.
- Execute o comando.
- Observe o resultado.
💡 Não tenha pressa
Antes de executar um comando, leia novamente o SQL.
Essa pequena prática ajuda a evitar muitos erros.
19. O que é uma Query?
📌 Definição
Query é uma instrução enviada ao banco de dados.
Uma query pode consultar, inserir, alterar ou excluir informações,
dependendo do comando utilizado.
💻 Exemplos
SELECT * FROM alunos;
INSERT INTO alunos
(nome, idade)
VALUES
('Pedro', 18);
UPDATE alunos
SET idade = 19
WHERE id = 1;
DELETE FROM alunos
WHERE id = 2;
20. Entendendo os Erros do MySQL
📌 Definição
Quando um comando possui algum problema, o MySQL apresenta uma
mensagem informando que a operação não pôde ser executada
corretamente.
🔎 O que verificar primeiro?
- Nome do banco.
- Nome da tabela.
- Nome das colunas.
- Tipos de dados.
- Parênteses.
- Vírgulas.
- Aspas.
- Ponto e vírgula.
- Chaves primárias.
- Chaves estrangeiras.
💡 Regra de ouro
Não ignore a mensagem de erro.
Ela pode indicar exatamente qual parte do comando precisa ser
analisada.
❌ Exemplo de erro
SELECT nome FROM aluno;
Se a tabela criada for chamada
alunos, existe uma diferença:
aluno
alunos
📖 O problema
O nome utilizado no SELECT precisa corresponder ao nome existente no
banco.
21. Restrições dos Campos
📌 Definição
Restrições definem regras que os dados precisam obedecer.
🔹 NOT NULL
nome VARCHAR(100) NOT NULL
Indica que o campo não deve receber valor nulo.
🔹 PRIMARY KEY
id INT PRIMARY KEY
Define a chave primária.
🔹 UNIQUE
email VARCHAR(150) UNIQUE
Ajuda a impedir valores repetidos naquele campo.
💡 Por que utilizar regras?
As restrições ajudam a manter a qualidade e a integridade das
informações armazenadas.
22. Chave Estrangeira — FOREIGN KEY
📌 Definição
Uma chave estrangeira estabelece uma relação entre tabelas.
💻 Exemplo
CREATE TABLE cursos (
id INT PRIMARY KEY AUTO_INCREMENT,
nome VARCHAR(100) NOT NULL
);
Agora podemos criar uma tabela de matrículas:
CREATE TABLE matriculas (
id INT PRIMARY KEY AUTO_INCREMENT,
aluno_id INT,
curso_id INT,
FOREIGN KEY (aluno_id)
REFERENCES alunos(id),
FOREIGN KEY (curso_id)
REFERENCES cursos(id)
);
📖 Entendendo
aluno_id pode apontar para um aluno.
curso_id pode apontar para um curso.
Dessa forma, a tabela de matrículas consegue relacionar informações
de outras tabelas.
💡 Pense assim
PRIMARY KEY identifica.
FOREIGN KEY relaciona.
23. Relacionamento entre Tabelas
📌 Definição
Relacionamento representa a ligação existente entre informações
armazenadas em diferentes tabelas.
💻 Exemplo
ALUNOS
id
nome
CURSOS
id
nome
MATRICULAS
id
aluno_id
curso_id
📖 Explicação
Um aluno pode estar relacionado a uma matrícula.
A matrícula pode estar relacionada a um curso.
Esse relacionamento permite organizar os dados sem colocar todas as
informações em uma única tabela.
24. CRUD no Banco de Dados
📌 O que é CRUD?
CRUD representa as quatro operações fundamentais realizadas sobre os
dados.
| CRUD |
SQL |
Função |
| Create |
INSERT |
Criar registros |
| Read |
SELECT |
Consultar registros |
| Update |
UPDATE |
Alterar registros |
| Delete |
DELETE |
Excluir registros |
💻 Resumo
CREATE → INSERT
READ → SELECT
UPDATE → UPDATE
DELETE → DELETE
🎯 Importante para Desenvolvimento de Sistemas
O CRUD aparece constantemente nas aplicações.
Um cadastro de alunos, por exemplo, normalmente precisa permitir
cadastrar, visualizar, alterar e excluir registros.
25. Criando um Banco de Dados Completo
🎯 Vamos praticar!
Agora vamos juntar os conhecimentos estudados para criar um pequeno
banco de dados escolar.
Execute os comandos na sequência apresentada.
1️⃣ Criar o banco
CREATE DATABASE escola;
2️⃣ Selecionar o banco
USE escola;
3️⃣ Criar a tabela de alunos
CREATE TABLE alunos (
id INT PRIMARY KEY AUTO_INCREMENT,
nome VARCHAR(100) NOT NULL,
idade INT,
email VARCHAR(150)
);
4️⃣ Inserir alunos
INSERT INTO alunos
(nome, idade, email)
VALUES
('Ana', 17, 'ana@email.com'),
('João', 18, 'joao@email.com'),
('Maria', 17, 'maria@email.com'),
('Carlos', 19, 'carlos@email.com'),
('Pedro', 18, 'pedro@email.com');
5️⃣ Consultar todos os alunos
SELECT *
FROM alunos;
6️⃣ Consultar apenas nome e idade
SELECT nome, idade
FROM alunos;
7️⃣ Filtrar alunos com 18 anos
SELECT *
FROM alunos
WHERE idade = 18;
8️⃣ Alterar um aluno
UPDATE alunos
SET idade = 20
WHERE id = 1;
9️⃣ Conferir a alteração
SELECT *
FROM alunos
WHERE id = 1;
🔟 Excluir um aluno
DELETE FROM alunos
WHERE id = 5;
1️⃣1️⃣ Conferir novamente
SELECT *
FROM alunos;
1️⃣2️⃣ Adicionar telefone
ALTER TABLE alunos
ADD telefone VARCHAR(20);
1️⃣3️⃣ Conferir a estrutura
DESCRIBE alunos;
🏆 Parabéns!
Você acabou de realizar várias operações importantes utilizando SQL.
Criou banco, criou tabela, inseriu dados, consultou, filtrou,
alterou, excluiu e modificou a estrutura.
26. Visualizando a Estrutura — DESCRIBE
📌 Definição
O comando DESCRIBE permite visualizar informações
sobre a estrutura de uma tabela.
💻 Exemplo
DESCRIBE alunos;
Também podemos utilizar:
DESC alunos;
📖 O que podemos observar?
- Nome dos campos.
- Tipo de dado.
- Se aceita NULL.
- Chaves.
- Valor padrão.
- Outras informações da estrutura.
27. Ordenando Resultados — ORDER BY
📌 Definição
O comando ORDER BY permite organizar os resultados
de uma consulta.
⬆️ Ordem crescente
SELECT *
FROM alunos
ORDER BY nome ASC;
⬇️ Ordem decrescente
SELECT *
FROM alunos
ORDER BY nome DESC;
📖 Entenda
ASC significa ordem crescente.
DESC significa ordem decrescente.
28. Contando Registros — COUNT
📌 Definição
A função COUNT() permite contar registros em uma
consulta.
💻 Exemplo
SELECT COUNT(*)
FROM alunos;
📖 Resultado
O MySQL retornará a quantidade de registros encontrados pela
consulta.
💻 Com filtro
SELECT COUNT(*)
FROM alunos
WHERE idade = 18;
29. Pesquisando Textos — LIKE
📌 Definição
O operador LIKE permite realizar pesquisas
utilizando padrões de texto.
💻 Nome começando com A
SELECT *
FROM alunos
WHERE nome LIKE 'A%';
💻 Nome contendo "an"
SELECT *
FROM alunos
WHERE nome LIKE '%an%';
📖 O que significa %?
O símbolo % representa uma sequência de caracteres.
30. Backup e Segurança dos Dados
📌 O que é backup?
Backup é uma cópia dos dados utilizada para recuperação caso ocorra
algum problema.
⚠️ Por que isso é importante?
Bancos de dados podem conter informações importantes.
Uma alteração ou exclusão incorreta pode causar perda de
informações.
💡 Boas práticas
- Faça cópias dos bancos importantes.
- Não compartilhe senhas.
- Não publique dados reais em projetos acadêmicos.
- Tenha cuidado com DELETE e DROP.
- Faça testes em bancos destinados ao aprendizado.
31. Boas Práticas no MySQL Workbench
📌 Definição
Boas práticas são hábitos que ajudam a manter o banco organizado,
seguro e fácil de compreender.
32. Dúvidas Frequentes
❓ O banco não aparece. O que fazer?
Primeiro confirme se você está conectado ao servidor correto.
Depois atualize a lista de schemas.
Confirme também se o banco realmente foi criado.
❓ O Workbench abriu, mas não consigo executar SQL.
Verifique se existe uma conexão ativa com um servidor MySQL.
O Workbench precisa estar conectado a um servidor para executar
comandos que dependem do banco.
❓ O comando SELECT deu erro.
Confira:
- Nome do banco.
- Nome da tabela.
- Nome das colunas.
- Sintaxe.
- Ponto e vírgula.
❓ Preciso decorar todos os comandos?
💡 Não!
O mais importante é compreender o funcionamento dos comandos e saber
pesquisar quando necessário.
Com a prática, os comandos mais utilizados serão memorizados
naturalmente.
❓ Posso usar DELETE sem WHERE?
🚨 Muito cuidado!
Um DELETE sem uma condição pode remover muitos registros.
Para estudar, acostume-se a confirmar primeiro com SELECT qual
registro será afetado.
❓ Posso usar UPDATE sem WHERE?
🚨 Muito cuidado!
Um UPDATE sem uma condição pode alterar muitos registros.
Sempre confira qual registro ou conjunto de registros será
modificado.
🏆 Desafio Final — Banco de Dados de uma Escola
🎯 Objetivo
Criar um banco de dados utilizando o MySQL Workbench e demonstrar
que você consegue executar as principais operações estudadas.
📝 Parte 1 — Criar o banco
-
Crie o banco chamado
escola.
-
Selecione o banco utilizando
USE.
📝 Parte 2 — Criar tabelas
-
Crie a tabela
alunos.
- Crie uma chave primária.
- Crie pelo menos quatro campos.
- Escolha corretamente os tipos de dados.
📝 Parte 3 — Inserir dados
- Cadastre pelo menos cinco alunos.
- Preencha nome, idade e e-mail.
📝 Parte 4 — Consultar
- Faça um SELECT para visualizar todos.
- Faça um SELECT escolhendo campos específicos.
- Utilize WHERE.
- Utilize ORDER BY.
- Utilize COUNT().
📝 Parte 5 — Alterar
- Escolha um aluno.
- Altere uma informação utilizando UPDATE.
- Faça um SELECT para confirmar.
📝 Parte 6 — Excluir
- Escolha um registro.
- Confirme utilizando SELECT.
- Utilize DELETE.
- Faça um novo SELECT.
📝 Parte 7 — Alterar estrutura
- Utilize ALTER TABLE.
- Adicione uma nova coluna.
- Utilize DESCRIBE para verificar a estrutura.
🎯 Estrutura esperada
escola
│
└── alunos
│
├── id
├── nome
├── idade
├── email
└── telefone
⚠️ Regra do laboratório
Nunca execute um comando simplesmente porque alguém mandou.
Antes de executar, tente responder:
"O que esse comando vai fazer?"
🚀 Pense como um desenvolvedor
Um bom desenvolvedor não é aquele que apenas sabe escrever comandos
SQL.
É aquele que entende os dados, organiza corretamente as informações,
identifica problemas e consegue explicar o que está fazendo.
✅ Checklist — Estou preparado?
🎯 Confira seu aprendizado
Marque os itens que você já consegue realizar sozinho.
🏆 Próximo nível
Depois de dominar esses conceitos, você poderá avançar para
consultas mais complexas, relacionamentos entre várias tabelas,
JOIN, GROUP BY, funções SQL, modelagem de dados e integração do
banco com aplicações.