我想在mysql数据库中保存中文字符,通过连接到db,字符集设置为UTF8
,字段的字符集也设置为utf8
,并排序- utf8_general_ci
,
但是它显示的不是单词而是正方形。
有一件事,如果我发出请求并在浏览器中返回单词,它会显示正确的中文单词。
所以,我想知道为什么它在浏览器中显示正确的单词,而在数据库中它就像正方形,反之亦然。我担心将来通过导出或导入可能会丢失一些数据。
谢谢
您的数据可能正确存储在DB中,但是通过sqlyog读取错误。
我没有使用过sqlyog,但这个问题可能是因为sqlyog连接到MySQL的方式-寻找与字符集相关的sqlyog连接到DB的参数,并确保它们也是utf8
我有一个类似的问题,当我必须插入拉丁字符到数据库,我使用mb_convert_encoding($str, 'utf8', ' html - entities '),它被正确地存储在数据库中,当我必须在html页面中显示它时,我只需要编码=utf-8