MySQL Workbench

Aprenda a instalar, configurar e utilizar o MySQL Workbench para criar, organizar, consultar e administrar bancos de dados de forma prática e profissional.


🔎 Ctrl + K

📘 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

  1. Acesse o site oficial do MySQL.
  2. Localize a área de downloads.
  3. Procure pelos produtos relacionados ao MySQL.
  4. Localize o instalador apropriado para seu sistema.
  5. Faça o download.
  6. Execute o instalador.
  7. Siga as etapas apresentadas.
  8. Configure o servidor MySQL.
  9. Defina o usuário e a senha.
  10. Finalize a instalação.
  11. 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

💻 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

  1. Abra sua conexão.
  2. Abra uma nova aba SQL.
  3. Digite o comando.
  4. Execute o comando.
  5. 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
  1. Abra o MySQL Workbench.
  2. Abra uma conexão.
  3. Abra uma aba SQL.
  4. Digite o comando.
  5. Revise o comando.
  6. Execute o comando.
  7. 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?

💡 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

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

  1. Crie o banco chamado escola.
  2. Selecione o banco utilizando USE.

📝 Parte 2 — Criar tabelas

  1. Crie a tabela alunos.
  2. Crie uma chave primária.
  3. Crie pelo menos quatro campos.
  4. Escolha corretamente os tipos de dados.

📝 Parte 3 — Inserir dados

  1. Cadastre pelo menos cinco alunos.
  2. Preencha nome, idade e e-mail.

📝 Parte 4 — Consultar

  1. Faça um SELECT para visualizar todos.
  2. Faça um SELECT escolhendo campos específicos.
  3. Utilize WHERE.
  4. Utilize ORDER BY.
  5. Utilize COUNT().

📝 Parte 5 — Alterar

  1. Escolha um aluno.
  2. Altere uma informação utilizando UPDATE.
  3. Faça um SELECT para confirmar.

📝 Parte 6 — Excluir

  1. Escolha um registro.
  2. Confirme utilizando SELECT.
  3. Utilize DELETE.
  4. Faça um novo SELECT.

📝 Parte 7 — Alterar estrutura

  1. Utilize ALTER TABLE.
  2. Adicione uma nova coluna.
  3. 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.