mysql字符集

数据有乱码,唉,首先想到的是字符集;

show character set ;
lower_case_table_names
MySQL里面有哪些地方会涉及到字符集?
client -> Server -> DB-> Table-> 字段

mysql > s

• 字符集继承关系:
服务端:server => database => table => column
客户端:connection => result
• 动态修改客户端字符集:SET NAMES latin1/gb2312/utf8;
• 无法动态修改服务端字符集
char(N) N表示是字符还是字节? N是字符
       
         utf-8  gbk
1汉字 3字节  2字节
1英文 1字节  1字节
 
在utf-8下;
varchar(30) 最长的字符是30个汉字符,占30*3+1  = 91 个字节;
 char(30) 最长的字符是30个英文字符,占30字节;
 
GBK 双字节
char(30) gbk   存30个汉字,占60个节节;
varchar(30), 存30个汉字,占61个节节;
 

原文地址:https://www.cnblogs.com/sgphappy2007/p/10441894.html