phpMyAdmin
 sql >> Base de Dados >  >> Database Tools >> phpMyAdmin

Erro:entrada duplicada '' para a chave 'email'


Na sua mesa cl56-goldeng.users , o campo email foi especificado na criação para não permitir que mais de 1 do mesmo valor fosse permitido nele. Isso é feito usando o UNIQUE identificador na criação da tabela no MySQL. Você pode ver mais sobre o identificador UNIQUE neste link.

Você tem 2 opções que você poderia fazer.
  • Primeiro seria remover a restrição exclusiva no email campo. Isso depende inteiramente da sua lógica em seu código, mas vendo que os e-mails devem quase sempre ser exclusivo, isso não é sugerido.

Você pode descartar uma chave exclusiva executando o comando:alter table [table-name] drop index [unique-key-index-name];
  • Segundo, seria usar NULL em vez de uma string vazia. Minha suposição é que você está definindo uma string vazia quando o e-mail do usuário não existe. Nesse cenário, seria melhor usar NULL e, em seguida, verifique isso ao recuperar dados do banco de dados.

Você pode inserir um NULL valor usando o NULL identificador em seu MySQL declaração, como tal:
INSERT INTO users (firstName,lastName,email)
  VALUES ('Bob','Ross',NULL);

E, em seguida, verifique se há um NULL value em qualquer idioma do qual você esteja acessando esses dados.