Mapear relações muitos-para-muitos (Ferramentas de Base de Dados Visuais)
Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerida de SQL do AzureAnalytics Platform System (PDW)
As relações muitos-para-muitos permitem relacionar cada linha de uma tabela a muitas linhas de outra tabela e vice-versa. Pode-se criar uma relação muitos-para-muitos entre a tabela authors
e a tabela titles
para fazer corresponder cada autor a todos os seus livros e associar cada livro a todos os seus autores. Criar uma relação um-para-muitos a partir de qualquer uma das tabelas indicaria incorretamente que cada livro pode ter apenas um autor, ou que cada autor pode escrever apenas um livro.
As relações muitos-para-muitos entre tabelas são acomodadas em bancos de dados por meio de tabelas de junção. Uma tabela de junção contém as colunas de chave primária das duas tabelas que você deseja relacionar. Em seguida, você cria uma relação das colunas de chave primária de cada uma dessas duas tabelas com as colunas correspondentes na tabela de junção. No banco de dados pubs, a tabela titleauthor
é uma tabela de junção.
Para criar uma relação muitos-para-muitos entre tabelas
No diagrama de banco de dados, adicione as tabelas entre as quais você deseja criar uma relação muitos-para-muitos.
Crie uma terceira tabela clicando com o botão direito do mouse no diagrama e escolhendo Nova Tabela no menu de atalho. Esta passará a ser a tabela de junção.
Na caixa de diálogo Escolher Nome, altere o nome da tabela atribuída pelo sistema. Por exemplo, a tabela de junção entre a tabela
titles
e a tabelaauthors
agora é chamadatitleauthors
.Copie as colunas de chave primária de cada uma das outras duas tabelas para a tabela de junção. Pode adicionar outras colunas a esta tabela, tal como pode adicionar a qualquer outra tabela.
Na tabela de junção, defina a chave primária para incluir todas as colunas de chave primária das outras duas tabelas. Para obter detalhes, consulte Como criar chaves primárias.
Defina uma relação um-para-muitos entre cada uma das duas tabelas primárias e a tabela de junção. A tabela de junção deve estar no lado "muitos" de ambas as relações que criar. Para obter detalhes, consulte Como criar relações entre tabelas.
Observação
A criação de uma tabela de junção em um diagrama de banco de dados não insere dados das tabelas relacionadas na tabela de junção. Para obter informações sobre como inserir dados em uma tabela, consulte Criar consultas de inserção de resultados (Visual Database Tools).
Ver também
Trabalhar com diagramas de banco de dados (Visual Database Tools)