1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[Resolvido]Disable Unique

Discussão em 'Web Development' iniciada por skandal, 17 de Setembro de 2007. (Respostas: 6; Visualizações: 606)

  1. skandal

    skandal Power Member

    Boas, é possivél fazer disable da propriedade UNIQUE numa tabela por momentos e depois "liga-la" novamente?

    Eu pergunto isto porque tenho uma tabela que guarda emails de contacto que não podem ser iguais, mas quando quiser editar pode acontecer, qualquer coisa como isto:

    nome1 email1
    nome2 email2

    e tento editar para:

    nome1 email2
    nome2 email1

    Vou ter erro pq tenho de fazer uptade a um email primeiro e só depois ao outro, como contornar isto.

    Agradecido.
     
    Última edição: 17 de Setembro de 2007
  2. CoolMaster

    CoolMaster Power Member

    Em que situação é que pode acontecer alguma coisa desse tipo?
    Que eu saiba não da para fazer disable ao unique.. se precisas de o fazer é porque alguma coisa não esta bem.
     
  3. skandal

    skandal Power Member

    Basicamente quando tenho dois contactos da mesma empresa, e trocas os emails de cada contacto, em que o contacto do 1º passa a ter o email do 2º e vice-versa.
     
  4. CoolMaster

    CoolMaster Power Member

    Existem varias soluções mas a mais simples (na minha opinião) é:
    atribuir o email1 para uma variavel (apagar o conteudo fisicamente)
    atribuir o email2 para uma variavel (apagar o conteudo fisicamente)
    e o resto já imaginas o que seja... não e a melhor solução mas é a mais simples... ou então não metes o campo a unique, embora tambem possa não ser a melhor ideia.
     
  5. skandal

    skandal Power Member

    Pois mas o problema é que posso ter 15 contactos.... e não sei qual deles troca com qual :S e posso ter vários a trocar entre si :|

    o melhor será tirar o unique e fazer as validações todas em php e JS, parece-me o mais acertado. Mas aceito sugestões.
     
  6. AliFromCairo

    AliFromCairo Power Member

    Boas, em MySQL precisas de fazer algo do género:

    Código:
    ALTER TABLE tabela DROP INDEX indice;
    # updates necessários ...
    ALTER TABLE tabela ADD UNIQUE indice(coluna);
    
    Espero que ajude.
     
  7. skandal

    skandal Power Member

    Apesar de ter encontrado essa solução antes de ver o teu post, o teu post ajudou-me a ver um erro que tinha.

    O meus sinceros obrigados..... é que foram 2 horas de luta :x2:
     

Partilhar esta Página