Nguy hiểm Tôi nghĩ rằng đó ALTER
sẽ hủy văn bản hiện có.
Ngoài ra, ... 'Tên' của bạn trông giống tiếng Trung Quốc, vì vậy tôi đoán rằng bạn muốn lưu trữ các ký tự Trung Quốc? Trong trường hợp đó, bạn nên sử dụng utf8mb4
, không chỉ utf8
. Điều này là do một số ký tự Trung Quốc có 4 byte (và không có trong Unicode BMP).
Tôi tin rằng bạn cần 2 bước :
ALTER TABLE notebooks MODIFY comments BLOB;
ALTER TABLE notebooks MODIFY comments TEXT
CHARACTER SET utf8mb4 COLLATE utf8mb4_general_520_ci;
Nếu không thì các ký tự latin1 sẽ được "chuyển đổi" thành ut8. Nhưng nếu bạn thực sự có tiếng Trung trong cột, bạn không có latin1. Thay đổi 2 bước, ở trên, (1) tắt bất kỳ kiến thức nào về bộ ký tự và (2) thiết lập rằng các byte thực sự được mã hóa utf8mb4.
Để an toàn hơn , làm trước
RENAME TABLE notebooks TO old;
CREATE TABLE notebooks LIKE old;
INSERT INTO notebooks SELECT * FROM old;
Sau đó thực hiện hai ALTER và kiểm tra kết quả. Nếu gặp sự cố, bạn có thể RENAME
để lấy lại bản sao cũ.