Duplicidade de registros em Banco de Dados

MySQL

25/09/2016

Boa noite pessoal!
A iniciante aqui tem uma dúvida em relação à banco de dados:
Como faço para colocar a mesma restrição UNIQUE em todo o banco ao invés de somente na tabela?
Exemplo: Existe uma ide_endereco que é uma chave estrangeira na tabela EMPRESA e OBRA. Só que no meu banco está aceitando eu colocar o id_endereco (1) tanto na EMPRESA quanto na OBRA. E são endereços diferentes. Como faço?
Existe essa possibilidade de realizar o bloqueio de valores duplicados no banco não somente na tabela.
Ah, o relacionamento é 1:1. Obra tem endereço (id) e Empresa também.
No aguardo, obrigada!!
Janaína Bandeira

Janaína Bandeira

Curtidas 0

Melhor post

Luiz Santos

Luiz Santos

25/09/2016

Janaina.
Mas são endereços distintos
Mesmo que o seu endereço seja chave, como estamos falando de duas tabelas diferentes, empresa e obra, eles podem ter o mesmo (id) endereço sim.
Agora, porque você está usando endereço como chave?

Grande abs
GOSTEI 2

Mais Respostas

Janaína Bandeira

Janaína Bandeira

25/09/2016

Oi Luiz,
Estou usando o endereço com chave estrangeira nas tabelas: EMPRESA e OBRA, porque fiz uma tabela endereço que dentro dela terá vários endereços. Eu tinha colocado o endereço dentro da tabela EMPRESA e OBRA mas a professora falou que era melhor fazer uma tabela ENDEREÇO que receberá vários id´s diferentes, se relacionando 1:1. Será que foi a melhor prática? Ficou confuso?
GOSTEI 0
Luiz Santos

Luiz Santos

25/09/2016

Pense assim.
Endereço é um atributo tanto de EMPRESA quanto de OBRA.
Nada impede de ser uma chave estrangeira.
E por ser uma chave estrangeira, ela pode existir duplicada nas tabelas que recebem essa chave.
Mas dentro da tabela endereço, cada endereço é único.
Consegui ser claro?

Você está modelando o que exatamente, pra eu entender.
GOSTEI 2
Janaína Bandeira

Janaína Bandeira

25/09/2016

Obrigada! Entendi agora.
Estou modelando um banco de um sistema que controla vencimento de certidões.
GOSTEI 0
POSTAR