Я просматриваю посты, помеченные как неотвеченные с тех пор, как присоединился к этому удивительному сайту ... не уверен, что это правильный подход для старых постов, но пока кто-то не скажет мне остановиться, я думаю, я буду продолжать, лол.
Итак, вот что я вижу с этой проблемой:
Если вы знаете, что можете ВЫБРАТЬ общий набор записей, то вы можете сразу перейти к тому, что вы пытаетесь сделать с ним, кроме ВЫБРАТЬ.
Замечу, что вы не пытаетесь ВСТАВИТЬ результат, но это ОБНОВЛЕНИЕ. Поскольку вы обновляете существующие строки, и поскольку единственным предложением является поле WHERE 2 = 'xxx', вы можете быть уверены, что у вас есть одна строка, не соответствующая вашему WHERE. Звучит как простая проблема целостности данных для этой строки.
Чтобы найти строку с ошибками, выполните запрос к вашей таблице как NOT IN или <> в зависимости от типа данных.