在命令行下,Mysql显示各个端所使用的字符集命令

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: win10中,在命令行情况下,Mysql显示各个端所使用的字符集命令: Microsoft Windows [版本 10.0.16299.64](c) 2017 Microsoft Corporation。

win10中,在命令行情况下,Mysql显示各个端所使用的字符集命令:

Microsoft Windows [版本 10.0.16299.64]
(c) 2017 Microsoft Corporation。保留所有权利。

C:\Windows\system32>mysql -u root -proot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.27 MySQL Community Server (GPL)

Copyright (c) 20002011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database day28;
Query OK, 1 row affected (0.01 sec)

mysql>
mysql> use day28;
Database changed
mysql>
mysql> #用户表
mysql> CREATE TABLE S_User(
    -> userID INT NOT NULL AUTO_INCREMENT, #主键ID
    -> userName VARCHAR(50NULL,   #用户姓名
    -> loginName VARCHAR(50NULL#登录名
    -> loginPwd VARCHAR(50NULL,   #密码#
    -> gender VARCHAR(10NULL,     #性别(例如:男,女)
    -> birthday VARCHAR(50NULL,   #出生日期
    -> education VARCHAR(20NULL,  #学历(例如:研究生、本科、专科、高中)
    -> telephone VARCHAR(50NULL,  #电话
    -> hobby VARCHAR(20NULL,      #兴趣爱好(例如:体育、旅游、逛街)
    -> path VARCHAR(500NULL,      #上传路径(path路径)
    -> filename VARCHAR(100NULL,  #上传文件名称(文件名)
    -> remark VARCHAR(500NULL,    #备注
    -> PRIMARY KEY (userID)
    -> );
Query OK, 0 rows affected (0.02 sec)

mysql>
mysql> #初始化数据:默认用户名和密码是admin
mysql> INSERT INTO s_user (userID,userName,loginName,loginPwd) VALUES (1,'超级管理员','admin','admin');
ERROR 1366 (HY000): Incorrect string value: '\xB3\xAC\xBC\xB6\xB9\xDC...' for column 'userName' at row 1  #客户端传来的数据的编码是gbk,而Mysql针对客户端默认使用的是utf8,所以会报错
mysql>
mysql> show variables like 'character%';  #显示各个端所使用的字符集,只对当前对话窗口有用
+--------------------------+---------------------------------------------------------+
| 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                                                    |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.5\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.01 sec)

mysql> set character_set_client=gbk;  #设置Mysql针对客户端使用字符集为gbk编码,报错解决
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO s_user (userID,userName,loginName,loginPwd) VALUES (1,'超级管理员','admin','admin');
Query OK, 1 row affected (0.01 sec)

mysql> select * from s_user;
+--------+-----------------+-----------+----------+--------+----------+-----------+-----------+-------+------+----------+--------+
| userID | userName        | loginName | loginPwd | gender | birthday | education | telephone | hobby | path | filename | remark |
+--------+-----------------+-----------+----------+--------+----------+-----------+-----------+-------+------+----------+--------+
|      1 | 瓒呯骇绠$悊鍛?     | admin     | admin    | NULL   | NULL     | NULL      | NULL      | NULL  | NULL | NULL     | NULL   |
+--------+-----------------+-----------+----------+--------+----------+-----------+-----------+-------+------+----------+--------+
1 row in set (0.00 sec)  #因为Mysql针对默认结果集使用的是utf8编码,而我们的pc端使用的是gbk编码,所以会报错

mysql> set character_set_results=gbk;  #设置Mysql针对数据返回结果集使用字符集为gbk编码,报错解决
Query OK, 0 rows affected (0.00 sec)

mysql> select * from s_user;
+--------+------------+-----------+----------+--------+----------+-----------+-----------+-------+------+----------+--------+
| userID | userName   | loginName | loginPwd | gender | birthday | education | telephone | hobby | path | filename | remark |
+--------+------------+-----------+----------+--------+----------+-----------+-----------+-------+------+----------+--------+
|      1 | 超级管理员          | admin     | admin    | NULL   | NULL     | NULL      | NULL      | NULL  | NULL | NULL     | NULL   |
+--------+------------+-----------+----------+--------+----------+-----------+-----------+-------+------+----------+--------+
1 row in set (0.01 sec)

mysql>
我的GitHub地址: https://github.com/heizemingjun
我的博客园地址: http://www.cnblogs.com/chenmingjun
我的蚂蚁笔记博客地址: http://blog.leanote.com/chenmingjun
Copyright ©2018 黑泽明军
【转载文章务必保留出处和署名,谢谢!】
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
1月前
|
存储 关系型数据库 MySQL
使用命令行cmd查询MySQL表结构信息技巧分享。
掌握了这些命令和技巧,您就能快速并有效地从命令行中查询MySQL表的结构信息,进而支持数据库维护、架构审查和优化等工作。
203 9
|
1月前
|
SQL 关系型数据库 MySQL
MySQL数据库命令行操作_mysql命令行
下面帮你整理一份MySQL数据库命令行操作的常用命令总结,适合日常开发和管理时快速使用。
|
5月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
1455 26
|
8月前
|
存储 人工智能 搜索推荐
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
2292 82
|
11月前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
297 6
|
6月前
|
SQL 关系型数据库 MySQL
【YashanDB知识库】字符集latin1的MySQL中文数据如何迁移到YashanDB
本文探讨了在使用YMP 23.2.1.3迁移MySQL Server字符集为latin1的中文数据至YashanDB时出现乱码的问题。问题根源在于MySQL latin1字符集存放的是实际utf8编码的数据,而YMP尚未支持此类场景。文章提供了两种解决方法:一是通过DBeaver直接迁移表数据;二是将MySQL表数据转换为Insert语句后手动插入YashanDB。同时指出,这两种方法适合单张表迁移,多表迁移可能存在兼容性问题,建议对问题表单独处理。
【YashanDB知识库】字符集latin1的MySQL中文数据如何迁移到YashanDB
|
存储 关系型数据库 MySQL
初步了解MySQL数据库的基本命令
初步了解MySQL数据库的基本命令
116 0
|
9月前
|
SQL 存储 关系型数据库
MySQL进阶突击系列(01)一条简单SQL搞懂MySQL架构原理 | 含实用命令参数集
本文从MySQL的架构原理出发,详细介绍其SQL查询的全过程,涵盖客户端发起SQL查询、服务端SQL接口、解析器、优化器、存储引擎及日志数据等内容。同时提供了MySQL常用的管理命令参数集,帮助读者深入了解MySQL的技术细节和优化方法。
|
11月前
|
tengine 关系型数据库 MySQL
Tengine、Nginx安装MySQL数据库命令教程
本指南详细介绍了在Linux系统上安装与配置MySQL数据库的步骤。首先通过下载并安装MySQL社区版本,接着启动MySQL服务,使用`systemctl start mysqld.service`命令。若启动失败,可尝试使用`sudo /etc/init.d/mysqld start`。利用`systemctl status mysqld.service`检查MySQL的服务状态,确保其处于运行中。通过日志文件获取初始密码,使用该密码登录数据库,并按要求更改初始密码以增强安全性。随后创建一个名为`tengine`的数据库,最后验证数据库创建是否成功以及完成整个设置流程。
|
存储 关系型数据库 MySQL
MySQL基础命令及使用示例
这些基础命令构成了与MySQL数据库交互的核心,理解并掌握它们对于进行有效的数据库操作至关重要。在实际使用中,建议结合实际案例和需求来练习这些命令,以加深理解和提高效率。
189 4

推荐镜像

更多