新闻中心

无忧主机讲mysql数据库编码原理

作者 / 时间 2011-05-15 00:39:26

很多站长可能与无忧主机(www.51php.com)小编一样,觉得他即熟悉又神秘。熟悉是因为我们每天都在用(php开源程序都使用mysql数据库进行存储数据),陌生是因为mysql经常与linux联系,是基于linux系统的下的应用,而我们平常使用的都是windows系统。无忧主机(www.51php.com)就基于自己对mysql数据库的理解来简单解释一下数据库编码问题,希望我的文章能给使用php虚拟主机的站长用户带来帮助。 在mysql编码面有两个概念,大家都不需要知道的。一个是 字符编码“character set”和校验编码“collations”。下面我们来说说这个两个东西。 1、 什么是字符集“character set” 数据库都有字符集,字符集是一个非常大的概念,如我以前的一篇文章关编码文章“织梦(dedecms)网站管理系统GBK和UTF8版本的区分(选择)”,希望大家可以看看。字符集,规定了不同字符的编码方式,一个字符集就是一组符号和编码。举个例子,我们常说的“ASCII字符集”,就是包括数字、大小写字母、分号、换行等的符合的集合,编码方式按照一定的规律和要求进行排序的编码集合。如字母A的编码是65。ASCII只规定了英文字母的编码,不是因为字母的(如中文字符)是那个用ASCII编码表示的。正因为如此,每个国家都会为自己国家的语言做了编码,我国的就是GB2312编码。如果你的网站要用多语言,就要用utf8编码,因为utf8编码是一个国际通用编码,utf8编码对世界所有语言文字进行了编码。对于这些编码有一个包含的概念,如GB2312编码包含ASCII字符,UTF8编码包含GB2312字符和ASCII字符。如果网站要用多语言,最合适的就是应该用utf8编码。 我们在使用文本存储时候,无处不在的都涉及到编码问题。我们常用的mysql数据库是支持多字符集的,并且,支持在不同的字符集之间转换,这方便不同字符集直接的移植并支持多语言,我们在迁移(移植)mysql数据库的时候就要注意,否则就会发生数据库乱码问题。关于此有一些常用术语,你是应该了解: 字符:汉字、英文字母、标点符号、拉丁文等等。 编码:将字符换成计算机存储的格式,如ASCII将字母A变成65进行存储。 字符集:一组字符以及对应的编码方式。 2、 什么是校验“collations” “collations”是“校验”的意思。这个校验编码都是在mysql数据库中使用,其作用是指导mysql对字符的比较,和整理。我们在进行网页开发过程中,大家基本上可以忽略collations校验,我们使用数据库中默认的校验编码就可以了。 美国/香港 纯Linux环境下高端免备案php空间,仅仅只需99元一年起。商务中国核心代理直销国际顶级域名(.com.net)域名注册只需要50元就可以获得。

本文地址:https://www.51php.com/mysql/2515.html

1
1
1
1
1
1
1