mysql的默认状态是不支持中文的,如果使用了默认的方式连接数据库查询出来的中文就会变为?,为了让mysql能支持中文就需要给连接一个charset的参数 。
以在命令行下进行到mysql的连接为例在命令行下使用 mysql --default-character-set=gbk来连接数据库。这样就可以正确查询出表中的中文。
如果想建立一个包含中文的数据库表的话就要在建立表的时候指明所使用的字符编码,例如:
create table test (name varchar(10) default charset=gbk;
这样建立出来的表才可以插入中文信息,否则在使用插入语句的时候就会报data too long 错误。