Dúvida do Aluno – Chaves Primárias e Relações Muitos-para-Muitos

As chaves primárias e estrangeiras são pilares cruciais na organização de dados, especialmente em relações complexas como muitos-para-muitos.

Avatar


15 de Maio2 min. de leitura

A importância das chaves primárias e o uso correto de chaves estrangeiras

Hoje vamos esclarecer uma dúvida muito comum entre nossos alunos sobre banco de dados: a utilização de chaves primárias e a organização de tabelas em relações muitos-para-muitos. Nosso aluno questionou se é possível ter valores duplicados em uma chave primária, especificamente em uma tabela de autoria de livros, onde o ISBN é usado como chave primária, mas apresenta duplicidade. Vamos desvendar esse mistério!

O que é uma chave primária?

Antes de tudo, é essencial entender que uma **chave primária** é um campo (ou conjunto de campos) que identifica de maneira única cada registro em uma tabela de banco de dados. Uma chave primária deve cumprir duas regras fundamentais: ser única e não nula.

O problema com a duplicidade no ISBN

Na situação apresentada pelo aluno, o ISBN, que é um número único atribuído a cada livro publicado, está sendo considerado como chave primária na tabela de autoria. No entanto, um livro pode ter vários autores. Isso significa que o mesmo ISBN pode aparecer várias vezes na tabela de autoria, o que viola a regra de unicidade da chave primária.

Uso de chave estrangeira e tabelas de junção

A solução ideal para este problema é utilizar o ISBN como uma **chave estrangeira** em uma tabela de junção. A chave estrangeira é um campo em uma tabela que aponta para a chave primária de outra tabela, estabelecendo um relacionamento entre elas.

Vejamos como isso pode ser organizado considerando uma relação muitos-para-muitos entre livros e autores:

Estrutura das Tabelas:

1. **Tabela Livros**

   – **ISBN**: Chave Primária

   – **Título**

   – **Ano de Publicação**

2. **Tabela Autores**

   – **ID Autor**: Chave Primária

   – **Nome do Autor**

3. **Tabela LivroAutor**

   – **ISBN**: Chave Estrangeira (referencia Livros)

   – **ID Autor**: Chave Estrangeira (referencia Autores)

   – **Chave Primária Composta**: (ISBN, ID Autor)

Exemplo de Dados:

**Tabela Livros**

| ISBN      | Título                   | Ano de Publicação |

|———–|————————–|——————-|

| 978-3-16-148410-0 | A Arte da Guerra         | 2000              |

| 978-0-13-235088-4 | Clean Code               | 2008              |

**Tabela Autores**

| ID Autor | Nome do Autor    |

|———-|——————-|

| 1        | Sun Tzu           |

| 2        | Robert C. Martin  |

**Tabela LivroAutor**

| ISBN              | ID Autor |

|——————-|———-|

| 978-3-16-148410-0 | 1        |

| 978-0-13-235088-4 | 2        |

Conclusão

Utilizar o ISBN como chave primária na tabela de autoria resultaria em duplicidade devido à natureza muitos-para-muitos da relação entre livros e autores. A chave primária deve ser única e, neste caso, a tabela de junção “LivroAutor” com uma chave primária composta de ISBN e ID Autor resolve perfeitamente o problema, garantindo a integridade e a normalização do banco de dados.

Esperamos que esta explicação tenha ajudado a esclarecer como gerenciar relações muitos-para-muitos em bancos de dados e a importância de usar corretamente chaves primárias e estrangeiras. Até a próxima dúvida!

Prof. Washington Almeida

Quer ficar por dentro dos concursos públicos abertos e previstos pelo Brasil?
clique nos links abaixo:

Concursos Abertos

Concursos 2024

Receba gratuitamente no seu celular as principais notícias do mundo dos concursos!
clique no link abaixo e inscreva-se gratuitamente:

Telegram

Avatar


15 de Maio2 min. de leitura