2017-01-17 3 views
0

Я добавил в свою таблицу id_customercomment. Но теперь мне нужно синхронизировать этот внешний ключ id_customer с первичным ключом в таблице customer.SQL update, compare и foreign key

Для этого я сравниваю электронные письма с customer и comment.

UPDATE comment 
    SET comment.id_customer = customer.id 
    FROM comment, customer 
    WHERE comment.email = customer.login 

Видимо, у меня есть синтаксическая ошибка. Кто-то может сказать мне, почему я ошибаюсь? Я также пробовал с INNER JOIN, но тот же результат.

Спасибо. Прыгай за мой английский.

ответ

1

Вы должны попробовать обновление с присоединиться:

UPDATE comment 
JOIN customer ON comment.email = customer.login 
SET comment.id_customer = customer.id 
1

Вы, кажется, хотите update с join:

UPDATE comment co JOIN 
     customer cu 
     ON co.email = cu.login 
    SET co.id_customer = cu.id ; 

Это MySQL-специфический синтаксис. Код в вашем вопросе, похоже, использует соглашения SQL Server.