当我将表格的字符集从utf8更改为latin1时,列仍保留旧设置。 对于例如在下面的示例中,即使表转换为latin1
,name列仍为utf8mysql> create table mytest (id int, name varchar(255)) engine=myisam default charset=utf8;
Query OK, 0 rows affected (0.02 sec)
mysql> alter table mytest charset=latin1;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> show create table mytest\G
*************************** 1. row ***************************
Table: mytest
Create Table: CREATE TABLE `mytest` (
`id` int(11) DEFAULT NULL,
`name` varchar(255) CHARACTER SET utf8 DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
这必须是为了预先确保数据的完整性。但有没有办法将一切都改为latin1。我并不太担心数据。如果由于转换而存在一些垃圾字符,我很好。