O MySQL é um sistema de gerenciamento de banco de dados relacional, o que significa que ele suporta relacionamentos entre entidades.
Primeiramente, esses relacionamentos permitem que os dados sejam armazenados de forma organizada e estruturada, tornando-os mais fáceis de gerenciar e recuperar.
Existem três tipos principais de relacionamentos de entidades no MySQL: um para um, um para muitos e muitos para muitos.
Relacionamento um para um
Um relacionamento um para um ocorre quando uma entidade tem apenas uma relação com outra entidade.
Por exemplo, uma tabela “pessoas” pode ter um relacionamento um para um com uma tabela “endereços”, onde cada pessoa tem apenas um endereço.
Para implementar esse relacionamento, podemos adicionar uma chave estrangeira na tabela “endereços” que se relaciona com a chave primária da tabela “pessoas”.
Veja:
CREATE TABLE pessoas ( id INT PRIMARY KEY, nome VARCHAR(255) );
CREATE TABLE enderecos ( id INT PRIMARY KEY, endereco VARCHAR(255), pessoa_id INT, FOREIGN KEY (pessoa_id) REFERENCES pessoas(id) );
Relacionamento um para muitos
Um relacionamento um para muitos ocorre quando uma entidade tem várias relações com outra entidade.
Por exemplo, uma tabela “pedidos” pode ter um relacionamento um para muitos com uma tabela “itens”, onde cada pedido tem vários itens.
Para implementar esse relacionamento, podemos adicionar uma chave estrangeira na tabela “itens” que se relaciona com a chave primária da tabela “pedidos”.
Veja o exemplo:
CREATE TABLE pedidos ( id INT PRIMARY KEY, data DATE );
CREATE TABLE itens ( id INT PRIMARY KEY, descricao VARCHAR(255), quantidade INT, pedido_id INT, FOREIGN KEY (pedido_id) REFERENCES pedidos(id) );
Relacionamento muitos para muitos
Um relacionamento muitos para muitos ocorre quando duas entidades têm múltiplas relações entre si.
Por exemplo, uma tabela “produtos” pode ter um relacionamento muitos para muitos com uma tabela “categorias”, onde cada produto pode pertencer a várias categorias e cada categoria pode conter vários produtos.
Para implementar esse relacionamento, é necessário criar uma tabela intermediária chamada “produtos_categorias” que armazena as chaves estrangeiras de ambas as tabelas “produtos” e “categorias”.
- CREATE TABLE produtos ( id INT PRIMARY KEY, nome VARCHAR(255) );
- CREATE TABLE categorias ( id INT PRIMARY KEY, nome VARCHAR(255) );
- CREATE TABLE produtos_categorias ( id INT PRIMARY KEY, produto_id INT, categoria_id INT, FOREIGN KEY (produto_id) REFERENCES produtos(id), FOREIGN KEY (categoria_id) REFERENCES categorias(id) );
Portanto é importante notar que, em todos os três tipos de relacionamentos, é essencial manter a integridade dos dados, garantindo que as chaves estrangeiras sejam atualizadas corretamente ao inserir, atualizar ou excluir dados nas tabelas relacionadas.
1 Comentário
[…] artigo anterior falei sobre relacionamentos no MySQL, portanto neste artigo vou mostrar a […]