🎉 SEMANA DO CONSUMIDOR

Últimos dias para comprar os cursos com 50% de desconto

Ver detalhes

Postado em em 3 de maio de 2024

Aprenda a criar e visualizar relacionamentos entre tabelas no SQL! Entenda o que são os relacionamentos entre tabelas no MySQL e como utilizá-los.

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

Visualizando Relacionamentos Entre Tabelas no SQL

Na aula de hoje, quero te ensinar como criar e visualizar os relacionamentos entre tabelas no SQL.

Vou te mostrar como fazer a criação do banco de dados no MySQL e como criar as tabelas nele, utilizando a chave primária e a chave secundária para relacionar as informações entre as tabelas.

Depois disso, vou te ensinar como criar relacionamentos entre tabelas no SQL e entender como esses relacionamentos funcionam.

Ficou interessado em saber mais sobre relacionamentos entre tabelas no SQL? Então, vem comigo que eu vou te mostrar!

O que são Relacionamentos entre Tabelas

Quando falamos de bancos de dados relacionais, estamos nos referindo a tabelas que possuem algum tipo de relação, ou seja, interconexões entre elas.

Por exemplo, dentro do banco de dados de uma empresa, podemos ter tabelas de vendas, produtos, clientes e lojas que se relacionam entre si.

Ao extrair as informações de uma venda, por exemplo, teremos um cliente que comprou um produto em uma determinada loja. Perceba como as informações de cada uma das tabelas se relacionam.

Criação do Banco de Dados no MySQL

Para podermos trabalhar e visualizar esse relacionamento entre tabelas, vamos criar um banco de dados de exemplo com 3 tabelas: Alunos, Cursos e Matrículas.

Para criar o banco de dados, basta executar o comando:

create database exemplo;

Em seguida, para ativá-lo, executamos o código:

use exemplo;


Para garantir que seu banco de dados está ativo e em uso, atualize o Schemas dentro do MySQL e verifique se o banco de dados está em negrito.

Criação do Banco de Dados no MySQL

Com isso, todos os comandos que executarmos a partir de agora serão realizados dentro desse banco de dados de exemplo.

Criação de Tabelas no MySQL – Chave Primária e Estrangeira

Com o banco de dados criado e ativado, podemos prosseguir com a criação das nossas tabelas.

Para compreender mais a fundo essa etapa, você pode acessar nossa aula sobre criação de tabelas, e sobre constraints em bancos de dados.

A primeira tabela a ser criada será a de Alunos. Nela teremos as colunas id_aluno (tipo inteiro), nome_aluno (tipo texto) e email (tipo texto).

create table Alunos (
    id_aluno int,
    nome_aluno varchar(100) not null,
    email varchar(100) not null,
    primary key(id_aluno)
);

Além disso, precisamos definir algumas regras (constraints) para essas colunas, informando que as colunas nome_aluno e email não podem receber valores nulos, ou seja, ambas precisam ser preenchidas.

A coluna id_aluno será a chave primária dessa tabela. É ela que identifica as informações distintas em uma tabela. Toda tabela possui uma e apenas uma chave primária. Ela serve como um identificador único para cada linha da tabela.

É a chave primária que permite a conexão com uma chave estrangeira de outra tabela. A chave estrangeira é uma coluna presente em outra tabela, que possibilita relacionar as linhas de uma segunda tabela com a chave primária da primeira tabela.

A próxima tabela será a tabela de Cursos com as colunas id_curso (inteiro), nome_curso (texto) e preco_curso (decimal).

create table Cursos (
    id_curso int,
    nome_curso varchar(100) not null,
    preco_curso decimal(10, 2) not null,
    primary key(id_curso)
);

Do mesmo modo que a coluna de alunos, essa coluna possui duas constraints para garantir que as colunas nome_curso e preco_curso não aceitem valores nulos, e a chave primária dela é o id_curso.

É bastante comum que a chave primária de uma tabela seja a coluna de Id.

E para finalizar, teremos a tabela Matriculas com as colunas id_matricula (inteiro), id_aluno (inteiro), id_curso (inteiro) e data_cadastro (data).

create table Matriculas (
    id_matricula int,
    id_aluno int not null,
    id_curso int not null,
    data_cadastro date not null,
    primary key(id_matricula),
    foreign key(id_aluno) references Alunos(id_aluno),
    foreign key(id_curso) references Cursos(id_curso),
);

Nessa tabela, as colunas id_aluno, id_curso e data_cadastro não podem ser do tipo nulo, e id_matricula será a primary key.

Além disso, temos as definições das foreign keys para as colunas id_aluno e id_curso. Dessa forma, a coluna id_aluno da tabela Matriculas se relaciona com a id_aluno da tabela Alunos, e o mesmo é válido para a coluna id_curso.

Para criar as tabelas, basta selecionar o código de cada uma delas e executá-lo dentro do MySQL.

Se elas tiverem sido criadas com sucesso, você poderá visualizá-las no Schemas.

Criação de Tabelas no MySQL – Chave Primária e Estrangeira

Como visualizar os Relacionamentos entre Tabelas?

Só é possível visualizarmos o relacionamento entre essas tabelas porque, quando elas foram criadas, criamos com elas a lógica de chaves primárias e chaves estrangeiras.

Se não tivéssemos construído as tabelas com essa lógica, não haveria um relacionamento entre elas que pudesse ser observado.

Dentro do MySQL, para visualizarmos os relacionamentos entre tabelas, precisamos primeiro voltar para a tela inicial dele, clicando no ícone da casinha.

Ícone página inicial MySQL

E em seguida, selecionar a guia de modelos (Models). Dentro dessa tela, clique na setinha ao lado de Models e selecione a opção Create EER Model from Database.

Create EER Model from Database

Na janela que será aberta, vamos definir o Stored Connection como Local instance e clicar em Next.

Criação do relacionamento entre tabelas pt 1

Na próxima tela, basta inserir a senha, aguardar o processo de conexão e clicar em Next.

Criação do relacionamento entre tabelas pt 2

Em seguida, selecione o banco de dados e clique em Next novamente. No caso desta aula, vamos selecionar o banco de dados exemplo.

Criação do relacionamento entre tabelas pt 3

Feito isso, basta apenas ir clicando em Next nas telas seguintes até o diagrama do banco de dados ser gerado.

diagrama do banco de dados

Entendendo o Relacionamento Entre Tabelas

Dentro desse diagrama, temos 3 caixinhas, cada uma representando uma das tabelas criadas (Alunos, Cursos e Matriculas).

Entendendo o Relacionamento Entre Tabelas

Perceba que temos a tabela Cursos e a tabela Alunos conectadas com a tabela Matriculas. Isso indica a relação entre as tabelas. Ou seja, a tabela Matriculas se relaciona com as outras duas tabelas através das chaves primárias e estrangeiras.

Conclusão – Visualizando Relacionamentos Entre Tabelas no SQL

Na aula de hoje, eu te mostrei como criar e visualizar os relacionamentos entre tabelas no SQL.

Te mostrei como criar o banco de dados, as tabelas e construir o relacionamento entre elas através das chaves primárias e estrangeiras.

Esse é um importante recurso na construção de um banco de dados e garante o bom funcionamento e interpretação das tabelas e das informações contidas nelas.

Hashtag Treinamentos

Para acessar outras publicações de SQL, clique aqui!


Quer aprender mais sobre SQL com um minicurso básico gratuito?

Diego Monutti

Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.