MYSQL数据库使用UTF-8中文编码乱码的解决办法_Mysql

1.用phpmyadmin创建数据库和数据表
创建数据库的时候,请将“整理”设置为:“utf8_general_ci”
或执行语句:

复制代码 代码如下:

CREATE DATABASE `dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; 

创建数据表的时候:如果是该字段是存放中文的话,则需要将“整理”设置为:“utf8_general_ci”,
如果该字段是存放英文或数字的话,默认就可以了。
相应的SQL语句,例如:

CREATE TABLE `test` (
`id` INT NOT NULL ,
`name` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;

2.用PHP读写数据库
在连接数据库之后:

复制代码 代码如下:

$connection = mysql_connect($host_name, $host_user, $host_pass); 

加入两行:

mysql_query("set character set 'utf8'");//读库
mysql_query("set names 'utf8'");//写库

就可以正常的读写MYSQL数据库了。
用的appserv-win32-2.5.10做的环境,装这个包的时候用默认的utf8编码。
在写数据库连接文件时,写成:

$conn = mysql_connect("$host","$user","$password");
mysql_query("SET NAMES 'UTF8'");
mysql_select_db("$database",$conn);

然后在做页面时,注意这句:

复制代码 代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

这样不管输入数据库的中文,还是页面显示,就都正常了。
在DW CS4版里,默认生成的也是utf8页面。
同样的,如果一开始写数据库连接文件时写成:

mysql_query("SET NAMES 'GBK'"); 

那页面也要相应变成:

复制代码 代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 

总结,最后主要是页面编码要统一就可以很方便的解决乱码问题,特别是在mysql_query()这个set names的设置必须和页面及数据库编码统计一就可以了。

希望这两篇关于UTF-8中文编码乱码的文章,能够更好地帮助大家解决这类问题,希望大家喜欢。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索mysql建数据库utf8
mysql数据库utf8
数据库 中文乱码 utf8、数据库utf8 乱码、mysql数据库中文乱码、mysql数据库乱码、mysql数据库汉字乱码,以便于您获取更多的相关知识。

时间: 2024-09-16 05:16:16

MYSQL数据库使用UTF-8中文编码乱码的解决办法_Mysql的相关文章

MYSQL数据库导入数据时出现乱码的解决办法_Mysql

首先在新建数据库时一定要注意生成原数据库相同的编码形式,如果已经生成可以用phpmyadmin等工具再整理一次,防止数据库编码和表的编码不统一造成乱码. 方法一: 通过增加参数 –default-character-set = utf8 解决乱码问题 mysql -u root -p password < path_to_import_file –default-character-set = utf8 方法二: 在命令行导入乱码解决 1. use database_name; 2. set n

PHP页面转UTF-8中文编码乱码的解决办法_php技巧

对于乱码这个问题php开发者几乎都会有碰到过,我们下面主要是介绍了php文件乱码和页面乱码. PHP页面转UTF-8编码问题 1.在代码开始出加入一行:header("Content-Type: text/html;charset=utf-8"); 2.PHP文件编码问题 点击编辑器的菜单:"文件"->"另存为",可以看到当前文件的编码,确保文件编码为:UTF-8, 如果是ANSI,需要将编码改成:UTF-8. 3.PHP文件头BOM问题:

MySql中表单输入数据出现中文乱码的解决方法_Mysql

 MySQL会出现中文乱码的原因在于 1.server本身设定问题,一般来说是latin1 2.建库建表时没有制定编码格式. MySql中表单输入数据出现中文乱码的解决方法: 1.建库的时候 CREATE DATABASE test CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'; 2.建表的时候 CREATE TABLE content ( text VARCHAR(100) ) ENGINE=InnoDB DEFAULT CHARSET=utf8

解决MySQL客户端输出窗口显示中文乱码问题的办法_Mysql

最近发现,在MySQL的dos客户端输出窗口中查询表中的数据时,表中的中文数据都显示成乱码,如下图所示: 上网查了一下原因:之所以会显示乱码,就是因为MySQL客户端输出窗口显示中文时使用的字符编码不对造成的,可以使用如下的命令查看输出窗口使用的字符编码:show variables like 'char%'; 命令执行完成之后显示结果如下所示: 可以看到,现在是使用utf8字符编码来显示中文数据的,但是因为操作系统是中文操作系统,默认使用的字符集是GB2312,所以需要把输出窗口使用的字符编码

linux 下 mysql下保存进去数据为乱码的解决办法(centos5.x)

linux mysql中文乱码 CENTOS 5.4/3 上适用[转] 2011-01-17 09:31 mysql默认的字符编码是latin1,而我用的是utf-8,存入数据库就变成了?????这样的乱码,解决方法: 1.windows下:修改my.ini文件,有两处default-character-set=latin1都改为default-character-set=utf8重启既可. 2.linux下:vi /etc/my.cnf(# cp /usr/share/mysql/my-med

MySQL数据库innodb启动失败无法重启的解决方法_Mysql

问题介绍 电脑在使用过程中死机,重启后发现mysql没有启动成功,查看错误日志发现是innodb出现问题导致mysql启动失败. 错误日志 $ mysql.server start Starting MySQL . ERROR! The server quit without updating PID file (/usr/local/var/mysql/fdipzonedeMacBook-Air.local.pid). 22:08:37 mysqld_safe Starting mysqld

Mysql数据库提示数据表损失问题修复解决办法

最近一段时间,公司的服务器每隔一段时间(大概24个小时),就会出现无法访问的情况,然后重启了服务器,一切都恢复了正常,一直都不知道是什么问题,于是就问了机房的工程师,他帮我分析了服务器的运行日志,发现了大量的Mysql的错误.     基本上每隔20秒,就会出现一次错误提示,看着这个的提示应该是这个表需要修复了 错误产生原因 在网上查了查为什么会出现表损坏,基本上得到以下的原因: 频繁查询和更新Mysql数据库表,造成的索引错误. MYSQL数据库因为某种原因而受到了损坏,如:数据库服务器突发性

MySQL数据库远程无法登陆的几种解决办法

无法远程登入MySQL数据库的解决办法一: 尝试用MySQL Adminstrator GUI Tool登入MySQL Server,Server却回复错误讯息:Host '60-248-32-13.HINET-IP.hinet.net' is not allowed to connect to this MySQL server 这个是因为权限的问题,处理方式如下: shell>mysql --user=root -p 输入密码 mysql>use mysql mysql>GRANT

6G数据库的导入 报各种错误的解决办法_Mysql

工具选择 一.sqlyog 这个工具还是很强大的,但是面对5个G的数据库来说,也只能罢工了,简单说,本机导入可以,从本机导入服务器不行. 二.phpadmin 自带的这个挺人家说还行,但是最后没用过,原因是看不见,因为最多50M,虽然修改配置文件可以上传但是5个G还是算了吧,没那个信心. 三.还有一个是一个PHP脚本.好像是德国人写的.这个东西,也是导入数据的,怎嘛说呢,本人是没试验成功.但是网上叫好一片,我是5G数据没点成功,这是折腾了第二天了. 四.数据库分割导入这个我也用到了,每个分割10