`
- 浏览:
205922 次
- 性别:
- 来自:
北京
-
MySQL 4.1的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。
查看系统的字符集和排序方式的设定可以通过下面的两条命令或mysql> status 。
mysql> SHOW VARIABLES LIKE 'character_set_%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
7 rows in set (0.00 sec)
mysql> SHOW VARIABLES LIKE 'collation_%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | latin1_swedish_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
3 rows in set (0.00 sec)
上面列出的值就是系统的默认值。(很奇怪系统怎么默认是latin1的瑞典语排序方式)...
当我们按照原来的方式通过PHP存取MySQL数据库时,就算设置了表的默认字符集为utf8并且通过UTF-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:
1. SET NAMES 'utf8';
它相当于下面的三句指令:
SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
2. 创建数据库
mysql> create database name character set utf8;
3. 创建表
CREATE TABLE `type` (
`id` int(10) unsigned NOT NULL auto_increment,
`flag_deleted` enum('Y','N') character set utf8 NOT NULL default 'N',
`flag_type` int(5) NOT NULL default '0',
`type_name` varchar(50) character set utf8 NOT NULL default '',
PRIMARY KEY (`id`)
) DEFAULT CHARSET=utf8;
4. 修改数据库成utf8的.
mysql> alter database name character set utf8;
5. 修改表默认用utf8.
mysql> alter table type character set utf8;
6. 修改字段用utf8
mysql> alter table type modify type_name varchar(50) CHARACTER SET utf8;
参考:http://xyfxh.spaces.live.com/Blog/cns!4EFEB1E6EFF8C824!151.entry
--
Blog: www.borderj.cn
MSN: borderj@live.com
Border
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
### MySQL中文编码设置 在Java Web开发过程中,MySQL数据库中的中文编码问题是非常常见的技术难题之一。如果处理不当,可能会导致中文显示乱码、数据插入失败等问题。本文将深入探讨MySQL中文编码的相关设置,并...
mysql 编码设置命令,需要的朋友可以参考下。
MySQL 编码与中文显示 MySQL 的默认编码是 Latin1,不支持中文,要支持中文需要把数据库的默认编码修改为 gbk 或者 utf8。下面我们将详细讲解 MySQL 编码与中文显示相关知识点。 MySQL 编码 MySQL 的编码方式是...
### MySQL修改编码设置方法 MySQL是一款广泛使用的开源关系数据库管理系统,支持多种操作系统,如Windows、Linux等。在处理中文或特殊字符时,正确的字符集设置至关重要。本文将详细介绍如何通过编辑MySQL配置文件...
全国省市区编码mysql全国省市区编码mysql全国省市区编码mysql全国省市区编码mysql
一、服务器编码设置 在安装Mysql时,选择合适的字符集非常重要。如果选择不当,将会导致中文乱码问题。常见的字符集包括gbk、utf8、latin1等。其中gbk是中文常用的字符集。设置服务器编码可以通过修改my.ini文件...
最后,`mysql编码设置.txt`文件可能包含了关于如何调整MySQL服务器、数据库、表或字段编码的具体步骤和配置建议。通常,这会涉及修改`my.cnf`配置文件,或者在数据库创建和操作时指定正确的编码选项。 总结,理解和...
与普通Web项目一样,修改`my.ini`配置文件,将默认编码设置为GB2312,并重启MySQL服务。 #### 3. 创建Struts控制器过滤器 创建一个名为`MyFilter`的类,继承自`RequestProcessor`,并在`processPreprocess`方法中...
mysql编码问题
本教程将介绍如何解决Unity3D中与MySQL数据库连接时的字符编码问题,确保数据能够正确地以UTF-8格式存储和读取。 首先,我们遇到的问题是即使设置表的默认字符集为UTF8,并且在发送查询时使用UTF-8编码,仍然会出现...
### MySQL的编码集修改方式详解 #### 背景与目的 MySQL作为一款广泛使用的开源关系型数据库管理系统,在处理各种语言的数据时,字符集的选择至关重要。特别是在全球化的大背景下,支持多语言成为数据库应用的基本...
linux下安装mysql,utf-8编码处理,以及远程连接
客户端工具的编码设置与数据库编码相同。这样,可以用客户端工具直接写入数据,不会产生乱码。例如,我们可以在 MySQL 客户端工具中设置编码为 gb2312。 三、Web.config 中设置连接字符串中的编码 在 ASP.NET 应用...
#### 三、MySQL编码设置 正确的编码设置对于确保数据的正确读取和处理至关重要。MySQL支持多种字符集,常见的有GBK和UTF-8。 - **临时设置编码**: - `set names gbk|utf8`:临时更改当前会话的字符集。 - **...
在安装MySQL数据库后,有时用户会遇到编码问题,特别是当需要处理中文数据时。这是因为MySQL的默认字符集是Latin1,它不支持中文字符。为了能够正确地存储和显示中文,需要将数据库的编码方式更改为GBK或UTF-8。本文...
MySQL数据库编码问题涉及到字符集的选择、配置以及数据的迁移和处理。字符集是决定数据库中存储和检索文本数据的方式,对于多语言支持和数据迁移至关重要。UTF-8是一种广泛使用的多字节字符编码,支持全球大部分语言...
中国城市编码 sql mysql 数据库 ,中国所有的城市编码,三级城市编码,数据库脚本 ,中国城市编码 sql mysql 数据库 ,中国所有的城市编码,三级城市编码,数据库脚本 ,中国城市编码 sql mysql 数据库 ,中国所有的...
mysql5.7配置文件设置UTF8编码。 使用此文件直接替换MySQL5.7原配置文件即可生效。