SET [NAMES|CHARACTER SET]
SET NAMES
,SET CHARACTER SET
和 SET CHARSET
语句用于修改当前连接的变量 character_set_client
,character_set_results
和 character_set_connection
。
语法图
SetStmt:
示例
mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+--------------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------------+
| character_sets_dir | /usr/local/mysql-5.6.25-osx10.8-x86_64/share/charsets/ |
| character_set_connection | utf8mb4 |
| character_set_system | utf8 |
| character_set_results | utf8mb4 |
| character_set_client | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_server | utf8mb4 |
+--------------------------+--------------------------------------------------------+
rows in set (0.01 sec)
mysql> SET NAMES utf8;
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+--------------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------------+
| character_sets_dir | /usr/local/mysql-5.6.25-osx10.8-x86_64/share/charsets/ |
| character_set_connection | utf8 |
| character_set_system | utf8 |
| character_set_results | utf8 |
| character_set_client | utf8 |
| character_set_server | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
+--------------------------+--------------------------------------------------------+
rows in set (0.00 sec)
mysql> SET CHARACTER SET utf8mb4;
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+--------------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------------+
| character_set_connection | utf8mb4 |
| character_set_system | utf8 |
| character_set_results | utf8mb4 |
| character_set_client | utf8mb4 |
| character_sets_dir | /usr/local/mysql-5.6.25-osx10.8-x86_64/share/charsets/ |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_server | utf8mb4 |
+--------------------------+--------------------------------------------------------+
rows in set (0.00 sec)
MySQL 兼容性
SET [NAMES|CHARACTER SET]
语句与 MySQL 完全兼容。如有任何兼容性差异,请在 GitHub 上提交 issue。
另请参阅
- SHOW [GLOBAL|SESSION] VARIABLES
- SET
- Character Set Support
看完两件小事
如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:
- 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
- 关注公众号 「方志朋」,公众号后台回复「资源」 免费领取我精心整理的前端进阶资源教程