如何修改MySQL字符集

如何修改MySQL字符集,第1张

方法/步骤

如果没有配置好cmd里面的mysql 环境变量,那就在系统高级设置那儿进行MySQL的环境变量设置。

win+R,调出“运行”,输入cmd,回车

登录数据库

查看数据库

查看数据库字符编码

通过MySQL命令行修改:(编码可选)

mysql> set character_set_client=utf8;

mysql> set character_set_connection=utf8;

mysql> set character_set_database=utf8;

mysql> set character_set_results=utf8;

mysql> set character_set_server=utf8;

mysql> set character_set_system=utf8;

mysql> set collation_connection=utf8;

mysql> set collation_database=utf8;

mysql> set collation_server=utf8;

当然还有:

修改数据库的字符集mysql>use mydb

mysql>alter database mydb character set utf8;

创建数据库指定数据库的字符集

mysql>create database mydb character set utf8;

用alter语句 如果数据库已经有数据表了, 那每个表都要修改 (修改数据库的字符集不会改变原有数据表的字符集)utf8:ALTER DATABASE `数据库` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ALTER TABLE `数据表` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci gbk (包含gb2312):ALTER DATABASE `数据库` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci ALTER TABLE `数据表` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci

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-2510做的环境,装这个包的时候用默认的utf8编码。

在写数据库连接文件时,写成:

$conn

=

mysql_connect("$host","$user","$password");

mysql_query("SET

NAMES

'UTF8'");

mysql_select_db("$database",$conn);

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

复制代码

代码如下:<meta

>

修改数据库成utf8的mysql> alter database name character set utf8;

修改表默认用utf8mysql> alter table type character set utf8;

修改字段用utf8mysql> alter table type modify type_name varchar(50) CHARACTER SET utf8;

段都有编码设置

出现乱码肯定是你现在用的编码混乱造成的

解决办法:

第一步 先改数据库编码

先修改你的数据库,如果你页面用的是UTF-8编码那么你数据库内的编码也需要设置为UTF-8,每个字段都需要设置要保持内外一致,你可以用Navicat for MySQL工具,这个工具里能看得很清除,如果表\字段很多的话你可以导出SQL语句,然后把SQL语句中相应的编码替换例如gb2312替换成utf8,然后再重新创建一个库,创建的时候字符集选择utf8的再把SQL语句导入,检查一下所有的编码都是utf8的就OK

第二步 程序修改

1\读库的时候

mysql_query("set names utf8");

2\每个页面头部加上一句

header("content-Type: text/html; charset=utf-8");

3\检查所有的编码声明是否正确

<meta >

以上就是关于如何修改MySQL字符集全部的内容,包括:如何修改MySQL字符集、怎样把mysql中的建表utf8格式、MYSQL数据库使用UTF-8中文编码乱码的解决办法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9301881.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存