2015-12-06 2 views
0

Я пытаюсь скопировать значения из столбца «имя пользователя» в столбец «email» в той же таблице, используя вкладку SQl из phpmyadmin, но я получаю сообщение об ошибке и я не знаю, как я могу это исправить.Ошибка при попытке скопировать данные из столбца в другой столбец в той же таблице sql

Я стараюсь код ФФ:

update `users` 
set `username` = `email` 

Но я получаю ошибку:

#1062 - Duplicate entry '' for key 'username'

Может кто-нибудь помочь мне исправить это? Спасибо

ответ

0

У вас есть уникальное ограничение/индекс на users.username - и вполне разумная вещь. Вы пытаетесь настроить пользователя на существующее значение.

Вы можете использовать запрос, чтобы найти значения, которые дублируются:

select u.* 
from users u 
where exists (select 1 
       from users u2 
       where u2.username = u.email and u2.username <> u.username 
      ); 
0

Если вы хотите скопировать с именем на электронную почту, то вы должны изменить порядок в своем заявлении:

update users set email = username 
2

username attribute added unique constraint that's why your query not executed successfully. I think you have to need copy username attribute data in email attribute and your query sequence is not right. Please execute below query.

update `users` 
set `email` = `username`