Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafaeloliveira83

Não repetir dados em 2 colunas

Recommended Posts

Tenho uma tabela mysql com campos Nome, Documento, Cidade, Data.

 

Gostaria de fazer com que o Nome não pudesse repetir igual ao Documento.

 

Eu precisaria usar 2 chaves primárias no "Nome e Documento" para que se os dois fossem iguais não inserisse no banco ou eu tenho que fazer relacionamentos ou alguma outra forma?

 

Observação:

Não utilizei ID, pois não achei necessário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

UNIQUE Key

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas onde eu colocaria o UNIQUE KEY?

No nome e documento?

 

Pois eu quero que possa repetir os nomes, mas os documentos nao podem ser repetidos.

 

EX:

 

Nome - Doc

----------------

Nome1 - 123456

Nome1 - 1234567

Nome1 - 123456 - Se eu tentasse adicionar novamente nao deixaria inserir já que repetiu as duas colunas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nas duas colunas. É possível adicionar UNIQUE Keys em mais de uma coluna ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao deu certo, pois isso é apenas para não poder repetir ou o nome ou o documento, mas o meu objetivo é nao repetir dos dois juntos iguais e a unica forma eu consegui foi deixando 2 chaves primarias, mas nao sei se deixa pior o banco

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao deu certo, pois isso é apenas para não poder repetir ou o nome ou o documento, mas o meu objetivo é nao repetir dos dois juntos iguais e a unica forma eu consegui foi deixando 2 chaves primarias, mas nao sei se deixa pior o banco

 

Não é pra criar duas uniques, é uma só envolvendo as duas colunas.

CREATE UNIQUE INDEX indice ON tabela(campo1, campo2)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.