Em análise de sistemas, um relacionamento muitos-para-muitos (também abreviado como N para N ou N:N) é um tipo de cardinalidade que refere-se ao relacionamento entre duas entidades A e L, no qual A pode conter uma instância pai para a qual existem muitas instâncias filhas em L e vice versa.

Thumb
Um Autor pode escrever vários Livros e um Livro pode ser escrito por vários Autores
Thumb
O relacionamento muitos-para-muitos Autor-Livro como um par de relacionamentos um-para-muitos com uma tabela de junção

Por exemplo, pensando-se em A como Autores e L como Livros, um Autor pode escrever vários Livros e um Livro pode ser escrito por vários Autores.

Em um sistema de gerenciamento de banco de dados relacional, tais relacionamentos são normalmente implementados por meio de uma tabela associativa (também conhecida como tabela de junção ou tabela de referência cruzada). Por exemplo, uma tabela AL possuindo dois relacionamentos um-para-muitos A → AL e L → AL. Neste caso, a chave primária lógica para AL é formada de duas chaves estrangeiras (isto é, cópias das chaves primárias de A e L).

Em frameworks de aplicações web, como CakePHP e Ruby on Rails, um relacionamento muitos-para-muitos entre tipos de entidades representadas por tabelas de banco de dados do modelo lógico é, algumas vezes, denominado como um relacionamento HasAndBelongsToMany (HABTM),[1] que em português significa Possui E Pertence A Muitos.

Ver também

Referências

Ligações externas

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.