当前位置: 首页 > 图文教程 > 数据库 > MYSQL > mysql 字符集的系统变量说明

MYSQL
SQL Server数据库对上亿表的操作
MyISAM和InnoDB的异同
带你轻松的接触用于Mysql元数据的UTF8
校对确定 较为复杂的一些特殊情况
带你轻松接触Mysql校对效果的示例
快速的掌握MySQL支持的操作系统
教你快速掌握Mysql ENUM和SET约束
MaxDB和MySQL之间的特性差异
带你轻松接触Mysql事务和原子操作
怎样在ANSI模式下运行MySQL
怎样使MySQL在攻击者面前保持安全
mysql_data_seek函数详解
如何解决MYSQL不能自动启动的问题
MySQL5.1新特性 日志的增强
一个实例讲解MySQL查询优化
MySQL_常用查询的例子
学习使用数据库MySQL
管理控制:MYSQL数据库常用命令列表
让新装上的MYSQL数据库更加安全
初学者必读 MySQL数据库常见问题汇总

MYSQL 中的 mysql 字符集的系统变量说明


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 96 ::
收藏到网摘: n/a

mysql 字符集的系统变量的一些说明,大家在使用过程中,可以作个参考。 1.character_set_server和collation_server
这两个变量是服务器的字符集。在系统启动的时候可以通过--character-set-server和--collation-server来设置它们。如果没有的话系统会把这两各变量设置成默认值latin1和latin1_swedish_ci。默认值是编译在程序中的,只能通过重新编译来改变。
这两个变量只用来为create database命令提供默认值。
2.character_set_database和collation_database
这两个变量是当前数据库的字符集。create database命令有两个参数可以用来设置数据库的字符集和比较规则。数据库建立会在数据库目录下的db.opt文件中记录数据库的选项,数据库的字符集设置也记录在里面。当我们用use改变当前数据库时,mysql会读数据库db.opt文件来设置这两个变量。当没有当前数据库的时候这两个变量等于character_set_server和collation_server。
这两个变量只用来为create table命令提供默认值。
3.character_set_client
这个变量用来决定mysql怎么解释客户端发到服务器的SQL命令文字。
4.character_set_connection和collation_connection
这两个变量用来决定mysql怎么处理客户端发来的SQL命令。mysql会把SQL命令文字从character_set_client编码转到character_set_connection然后再执行。collation_connection在比较SQL中的直接量时使用。
5.character_set_results
当SQL有结果返回的时候这个变量用来决定发给客户端的结果中文字量的编码。
还有几个字符集概念没有系统变量表示。
6.表的字符集
create table 的参数里可以设置,为列的字符集提供默认值。
7.列的字符集
决定本列的文字数据的存储编码。列的比较规则比collation_connection高。也就是说mysql会把SQL中的文字直接量转成列的字符集后再与列的文字数据比较。
8.character_set_system
这是元数据的字符集,数据库,表和列的定义都是用的这个字符集。它有一个定值, 是utf-8