mysql字符集的一个小问题
时间:2011-12-04
来源:互联网
             发现有人问character_set_database改不过来的问题,我说一下,问题本身简单,高手勿拍。
mysql字符集是层层继承的,字段默认的话看表,表默认看库,库默认看服务器,服务器安装时候的默认是latin1
一般碰到想改character_set_database的人都马上想到去改一下my.ini,default-character-set=UTF8。改过重启发现别的都变了,唯独character_set_database没变。问题出在character_set_database说的其实是你当前use的库的字符集。
拿sakila举例说明。默认安装mysql,字符集全都是latin1。resource sakila-schema.sql; resource sakila-data.sql,在创建sakila的sql里没有指定sakila库的字符集,于是用服务器的默认latin1。库创建好了后,你把my.ini里面改了utf8,但是这对于已经用latin1创建的sakila没有影响。那么你use sakila后,在show variables 看到的 charcater_set_database当然还是sakila本身的latin1。
解决:改了my.ini 后(utf8),重新创建一下sakila,你在看吧~:)
            mysql字符集是层层继承的,字段默认的话看表,表默认看库,库默认看服务器,服务器安装时候的默认是latin1
一般碰到想改character_set_database的人都马上想到去改一下my.ini,default-character-set=UTF8。改过重启发现别的都变了,唯独character_set_database没变。问题出在character_set_database说的其实是你当前use的库的字符集。
拿sakila举例说明。默认安装mysql,字符集全都是latin1。resource sakila-schema.sql; resource sakila-data.sql,在创建sakila的sql里没有指定sakila库的字符集,于是用服务器的默认latin1。库创建好了后,你把my.ini里面改了utf8,但是这对于已经用latin1创建的sakila没有影响。那么你use sakila后,在show variables 看到的 charcater_set_database当然还是sakila本身的latin1。
解决:改了my.ini 后(utf8),重新创建一下sakila,你在看吧~:)
作者: isaac0702 发布时间: 2011-12-04
             自己结了            
            作者: isaac0702 发布时间: 2011-12-04
             恩不错            
            作者: rucypli 发布时间: 2011-12-04
作者: ACMAIN_CHM 发布时间: 2011-12-04
 相关阅读 更多  
      
    热门阅读
-  
 office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
          阅读:74
 -  
 如何安装mysql8.0
          阅读:31
 -  
 Word快速设置标题样式步骤详解
          阅读:28
 -  
 20+道必知必会的Vue面试题(附答案解析)
          阅读:37
 -  
 HTML如何制作表单
          阅读:22
 -  
 百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
          阅读:31
 -  
 ET文件格式和XLS格式文件之间如何转化?
          阅读:24
 -  
 react和vue的区别及优缺点是什么
          阅读:121
 -  
 支付宝人脸识别如何关闭?
          阅读:21
 -  
 腾讯微云怎么修改照片或视频备份路径?
          阅读:28
 















