Perigo Acho que que
ALTER
irá destruir o texto existente. Além disso, ... Seu 'nome' parece chinês, então eu acho que você deseja armazenar caracteres chineses? Nesse caso, você deve usar
utf8mb4
, não apenas utf8
. Isso ocorre porque alguns dos caracteres chineses ocupam 4 bytes (e não estão no Unicode BMP). Acredito que você precisa de 2 etapas :
ALTER TABLE notebooks MODIFY comments BLOB;
ALTER TABLE notebooks MODIFY comments TEXT
CHARACTER SET utf8mb4 COLLATE utf8mb4_general_520_ci;
Caso contrário, os caracteres latino1 será "convertido" para ut8. Mas se você realmente tem chinês na coluna, não tem latin1. A alteração de 2 etapas, acima, (1) desativa qualquer conhecimento do conjunto de caracteres e (2) estabelece que os bytes são realmente codificados em utf8mb4.
Para ser mais seguro , primeiro faça
RENAME TABLE notebooks TO old;
CREATE TABLE notebooks LIKE old;
INSERT INTO notebooks SELECT * FROM old;
Em seguida, faça os dois ALTERs e teste o resultado. Se houver problemas, você pode
RENAME
para recuperar a cópia antiga.