Ir para conteúdo

POWERED BY:

Arquivado

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

Flávio Douglas Nunes

ADD UNIQUE do Mysql

Recommended Posts

Olá pessoal tenha uma dúvida em relação ao mysql.

 

Eu quero restringir dois campos ao mesmo da seguinte forma

 

Exemplo:

tenho a minha tabela testes com

 

id, campoa, campob

 

quero colocar uma restricao para que nao possa inserir valores duplicados nos mesmos campos

 

tipo:

 

campoa = 1

campob = 2

 

desta forma quero colocar uma restricao para que nao posso inserir novamente os mesmos valores no mesmos campos

 

estive pesquisando no mysql e descobri a restrição ADD UNIQUE ('nomedocampo')

 

só que com essa restrição so consigo colocar nos campos de forma separada.

 

Alguem sabe alguma forma de colocar ela em dois campos ao mesmo tempo?

ou outra meio q eu possa fazer isso direto dentro do mysql?

 

desde já agradeço a atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

No Oracle usa-se uma check constraint para este tipo de validação, pelo que vi o MySql não parece suportar isto.

 

Uma solução poderia ser criar uma trigger de validação (before insert), se ocorrer de campo1=campo2 então gera um erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No Oracle usa-se uma check constraint para este tipo de validação, pelo que vi o MySql não parece suportar isto.

 

Uma solução poderia ser criar uma trigger de validação (before insert), se ocorrer de campo1=campo2 então gera um erro.

 

Amigo não é se campo1=campo2 não !

 

a validação que eu preciso e que os campos sejam únicos exemplo

 

campo1 campo2

CidadeA RN

CidadeA PB

CidadeB RN

CidadeB PB

CidadeA RN -> pronto aqui não e pra gravar no banco pois já existe um campo1 e campo2 identicos no banco

 

Da pra fazer este tipo de validação com uma trigger mesmo no mysql?

desde já agradeço amigo !

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.