一、MySql,用cmd命令提示行连接数据库,发现查询数据库中的中文出现乱码,而数据库里面存的是utf8,都是正确的
于是上网搜索一下,
找到相关设置方法如下。
1、MySQL是有一些环境变量可以设置,
可输入:show variables;可查看当前的环境变量设置;
2、这些变量当中有一部分与字符相关的设置,
可输入:show variables like ´character%´;查看;
3、其中character_set_results决定返回结果的编码,
windows下设为gb2312即可正常显示中文;
设置方法:set character_set_results=gb2312;,然后回车即可;
4、当然,如果想通过命令提示行窗口来输入中文修改数据库内容,
则可以试试设置set character_set_connection=gb2312;
以及set character_set_client=gb2312;
说明:
以上在命令提示行窗口中设置的值,
其有效期仅仅为本次连接有效,
即断开本次连接之后,
重新连接进来,
所有所设置的变量又恢复到默认的值了。
二、从DOS切换到mysql:环境变量设置的问题
在WindowsXP中打开DOS,通过输入命令“mysql -u root -p”切换到mysql下,切换失败,如下所示:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
(C) 版权所有 1985-2001 Microsoft Corp.
C:/>mysql -u root -p
'mysql' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'mysql' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
出现这种错误的原因是没有在环境变量PATH中将mysql的路径添加进去。如果是在unix平台,可以通过PATH=XXX;export PATH来进行路径的添加,在WindowsXP平台下,需要按照下面的方法来将mysql路径添加到环境变量中:
右键点击“我的电脑”-“属性”-“高级”-“环境变量”-“系统变量”-双击“Path”-将mysql的路径“C:/Program Files/MySQL/MySQL Server 5.0/bin”添加进去-“确定”
添加完毕之后,再到DOS下进行测试:
C:/>mysql -u root -p
Enter password: **********
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 21
Server version: 5.0.45-community-nt MySQL Community Edition (GPL)
Enter password: **********
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 21
Server version: 5.0.45-community-nt MySQL Community Edition (GPL)
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql>
成功!
成功!