-
Po co mieć klauzulę COLLATE podczas porównywania BIGINTs z dosłownymi liczbami? Usuń klauzulę COLLATE w instrukcji UPDATE. -- To jest główne rozwiązanie, zgodnie z komentarzami OP.
-
Czy kod znajduje się w przechowywanej rutynie, która została skompilowana za pomocą latin1? Wykonaj SHOW CREATE PROCEDURE (lub FUNCTION), aby sprawdzić, czy tak było. Jeśli tak, UPUŚĆ i UTWÓRZ go ponownie z obowiązującym utf8mb4.
-
Zmiana systemu plików_zestawu_znaków i serwera_zestawu_znaków jest ryzykowna. Zmień je z powrotem.