MySQL查询字符编码,了解数据存储原理(mysql查询字符编码)
在MySQL中,查询字符编码可以帮助我们了解数据存储原理,进而选择最合适的编码语言为每种数据类型。MySQL支持表示与处理不同语言和地区的不同字符集以及服务器端字符集转换,为客户端和服务器之间的端到端键盘输入转换提供支持。
查询MySQL字符编码的一般步骤是:在MySQL终端查询数据库服务器的默认字符编码:
show variables like 'character_set_%';
``` 一般服务器会返回一些值,比如:
+————————–+——–+
| Variable_name | Value |
+————————–+——–+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
+————————–+——–+
7 rows in set (0.00 sec)
从上面结果可以看出,这里的字符集是utf8。
在MySQL中,可以查询某个特定字符集的字符编码:
show character set like “gbk”;
上面的命令会查询所有和gbk有关的字符编码:
+———+—————————–+—-+———+
| Charset | Description | ID | Default |
+———+—————————–+—-+———+
| gbk | Chinese Simplified (GBK) | 12 | |
| gb2312 | GB2312 Simplified Chinese | 86 | Yes |
| gb18030 | GB18030 Chinese (4 Byte) | 13 | |
+———+—————————–+—-+———+
3 rows in set (0.00 sec)
最后,我们可以使用SHOW COLLATION命令查看某个特定字符集的所有规范:
show collation like ‘gbk%’;
执行该命令会返回某种字符编码的详细信息,比如:
+—————-+———-+—–+———+———-+———+
| Collation | Charset | Id | Default | Compiled | Sortlen |
+—————-+———-+—–+———+———-+———+
| gbk_chinese_ci | gbk | 12 | Yes | Yes | 2 |
| gb2312_chinese | gb2312 | 86 | Yes | Yes | 2 |
| gb18030_chinese| gb18030 | 13 | Yes | Yes | 1 |
+—————-+———-+—–+———+———-+———+
3 rows in set (0.00 sec)
从上面的结果可以看出,MySQL为每种字符编码复制了多个规范,以供程序员选择使用。
通过以上操作,就可以查询Mysql数据库里的字符编码,以便我们了解数据存储原理,为不同的数据类型选择最合适的编码。