SQLyog在创建表时默认的表的编码方式为latin1,但通常我们在插入和修改数据时会用到中文,所以通常会修改表的编码格式,编码格式的修改方式有两种,一种是在创建表的同时修改表的编码格式,另一种时创建后再修改编码格式。
方式一:创建表的同时修改编码格式:
CREATE TABLE IF NOT EXISTS grade(
gradeid INT(10) PRIMARY KEY AUTO_INCREMENT,
gradename VARCHAR(50) NOT NULL
)DEFAULT CHARSET utf8;
方式二:创建后再修改编码格式
CREATE TABLE IF NOT EXISTS grade(
gradeid INT(10) PRIMARY KEY AUTO_INCREMENT,
gradename VARCHAR(50) NOT NULL
)
#修改表的编码方式
ALTER TABLE grade DEFAULT CHARSET utf8;
但这种方式在修改完表的编码方式后,字段的编码格式依旧是latin1_swedish_ci:
所以,需要再次修改字段的编码格式:
ALTER TABLE grade CHANGE `gradename` `gradename` VARCHAR(50) CHARACTER SET utf8 NOT NULL;
综上,最好是在创建表的同时修改表得编码格式。