㈠ 创建数据库时旁边的“整理”选项选什么
utf-8 代表的是字符编码规范
一个字节占8位二进制 如10000000 8位二进制可以表示2的8次方种不同的 写法 如00000000,00000001...... 如果做一个映射 每一个写法代表一个有意义的字符如a ,B等等
如果世界上只有一种语言就是英语 那么所有的英文字母 总共有 52 个 (a-z 和A-Z) ,那么我用6位二进制数即可一一映射完,因为6位二进制可以表示64种不同的写法。
但是世界上不同的国家有自己的语言,比如中国的汉字有几千个 ,那么6位的二进制就无法满足要求就必须要扩大 二进制位数。 由于计算机基本空间单位用字节表示,一个字节有8位二进制数。所以一个字节可以表示256种不同的文字。为了满足全世界所有的文字,那么经过计算4个字节可以包含完全,4个字节有32位 ,可以表示2的32次方个不同的文字。
utf-8是一种针对Unicode的可变长度字符编码,UTF-8用1到4个字节编码UNICODE字符,所以utf-8可以编码所有的语言文字
utf-8我看说明是多国语言,那不选这个就无法显示外国语言只能显示中文?
多国语言 代表utf-8为多国的文字都提供了一种编码规则(可以简单理解为映射规则,如00000000 代表 0 ,000000001000010 代表 国 等等),所以他能显示所有多个国家的文字
还有基本每个国家 自己也有一套编码规则 如 中国的编码规则 就是GBK ,UTF-8可以看成是全球统一的编码规范
㈡ mysql 创建数据库 utf-8 哪个好
检查当前数据库编码。
使用语句:
show variables like ‘%character%’;
show variables like’%collation%’;
如果不是以上情况,需要将mysql编码设置为utf-8。具体步骤如下:
如果安装mysql时安装了“MySql Sever Instance Configuration Wizard”,则只需要启动该程序进行相应设置即可。如下面截图中所描述,需要将默认编码设置为utf8
如果没有该程序,需要手动修改mysql编码。
1、 编辑MySql的配置文件
MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是 /etc/my.cnf
--在 [mysqld] 标签下加上以下内容:
default-character-set = utf8
character_set_server = utf8
注意:如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可。
--在 [mysql] 标签下加上一行
default-character-set = utf8
--在 [mysql.server]标签下加上一行
default-character-set = utf8
--在 [mysqld_safe]标签下加上一行
default-character-set = utf8
--在 [client]标签下加上一行
default-character-set = utf8
2、 重新启动MySql服务
Windows可在服务管理器中操作,也可使用命令行:
net stop mysql 回车
net start mysql 回车
服务名可能不一定为mysql,请按自己的设置
Linux下面可是用 service mysql restart
如果出现启动失败,请检查配置文件有没有设置错误
3、 查看设置结果
登录MySql命令行客户端:打开命令行
mysql –uroot –p 回车
输入密码
进入mysql后 执行 :show variables like "% character %";
另外:
建立数据库时可以使用以下命令:
create database app_relation character set utf8;
use app_relation;
source app_relation.sql;
修改数据库编码的命令为:
alter database app_relation character set utf8;
㈢ 如何设置mysql数据库为utf-8编码
1、安装数据库的时候,指定好编码,UTF-8
MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是/etc/my.cnf
--在 [mysqld] 标签下加上以下内容:
default-character-set = utf8
character_set_server = utf8
2、创建数据库的时候,指定同样的编码
创建的时候,拉下字符集选择,选择utf8
最好上面2步,以后乱码问题离你又远了一步
海枫科技
㈣ 怎么将数据库编码选择为 utf-8
转给你一段。你试下吧。 这个要用到Access-to-MySQL Pro 这个软件。网上有下载,并且有破解版的。问题是如果直接用它来把ACCESS文件导入MYSQL会出现乱码。所以我试下以下方法,虽然麻烦点,但是还可是可行。5.1用Access-to-MySQL Pro来把数据库导出为*.sql 文件。A) 运行Access-to-MySQL Pro的时候选ADVANCEMODE,下一步;B) 选择STOREinto mp file,就是保存为*.sql文件,下一步;C) 选择目标MYSQL的版本,选默认值,下一步;D) 这下要选MS ACCESS USER-LEVElL SECURITY FILE,这个文件一般在你的OFFICE安装目录下。我的是在G:\Program Files\Microsoft Office\Office\SYSTEM.MDW,用户名填ADMIN,下一步;E) 选择你要转换的ACCESSMDB文件以及保存路径,点下一步,就可以生成.sql 文件了。我生成的是C:\test.sql。5.2把刚才生成的文件转成UTF-8格式。用记事本打开这个文件,选另存为,编码选UTF-8,覆盖保存就OK了。5.3在MYSQL导入该文件我不在phpMyAdmin导入文件是因为phpMyAdmin默认只能导入17M的文件。懒得改相应的设置,MYSQL命令行方便些。进入DOS窗口,转到MYSQL安装目录的BIN子目录下。我这里是G:\Program Files\xapp\xampp\mysql\bin.A)mysql -uroot -ppassword:这里输入密码B)CREATE DATABASE hewang;C)use hewang;E)source c:\test.sql;有可能会出现错误提示音,不管他,等它再次出现提示符的时候,导入成功。我用这种方法导入一个50M的文件没有问题,只是提示音响了十分钟。可以在phpMyAdmin下查看数据是否正确,如果没有乱码就OK了。
㈤ 我在创建数据库使用编码格式为utf8,而且myeclipse也用的是utf8格式,但是我向数据库存储数据时竟然还是问
mysql?如果是mysql的话,建议使用mysql5版本,然后安装好之后,开始菜单---mysql--MySql server 5.0---MySQL Server Instance Config Wizard打开这个界面后前几步一般都默认即可,然后到后面有一步,让你选择数据库字符集编码,你选择utf8编码,然后下一步下一步保存结束即可。
然后程序里连接数据库的字符串都不需要额外写任何设置编码的代码,建表,建数据库也一样,都不需要再设置编码了。
java连接mysql的字符串:jdbc:mysql://localhost:3306/数据库名
无需像一楼那样连接数据库的字符串后面再加设置编码
㈥ mysql创建数据库命令 utf8
CREATE DATABASE hello_world CHARACTER SET utf8 COLLATE utf8_general_ci;
㈦ php创建mysql数据表,怎么选择UTF8字符集
一、转码失败
在数据写入到表的过程中转码失败,数据库端也没有进行恰当的处理,导致存放在表里的数据乱码。
针对这种情况,前几篇文章介绍过客户端发送请求到服务端。
其中任意一个编码不一致,都会导致表里的数据存入不正确的编码而产生乱码。
比如下面简单一条语句:
set @a = "文本字符串";
insert into t1 values(@a);
变量 @a 的字符编码是由参数 CHARACTER_SET_CLIENT 决定的,假设此时编码为 A,也就是变量 @a 的编码。
2. 写入语句在发送到 MySQL 服务端之前的编码由 CHARACTER_SET_CONNECTION 决定,假设此时编码为 B。
3. 经过 MySQL 一系列词法,语法解析等处理后,写入到表 t1,表 t1 的编码为 C。
那这里编码 A、编码 B、编码 C 如果不兼容,写入的数据就直接乱码。
二、客户端乱码
表数据正常,但是客户端展示后出现乱码。
这一类场景,指的是从 MySQL 表里拿数据出来返回到客户端,MySQL 里的数据本身没有问题。客户端发送请求到 MySQL,表的编码为 D,从 MySQL 拿到记录结果传输到客户端,此时记录编码为 E(CHARACTER_SET_RESULTS)。
那以上编码 E 和 D 如果不兼容,检索出来的数据就看起来乱码了。但是由于数据本身没有被破坏,所以换个兼容的编码就可以获取正确的结果。
这一类又分为以下三个不同的小类:
1)字段编码和表一致,客户端是不同的编码
比如下面例子, 表数据的编码是 utf8mb4,而 SESSION 1 发起的连接编码为 gbk。那由于编码不兼容,检索出来的数据肯定为乱码。
2)表编码和客户端的编码一致,但是记录之间编码存在不一致的情形
比如表编码是 utf8mb4,应用端编码也是 utf8mb4,但是表里的数据可能一半编码是 utf8mb4,另外一半是 gbk。那么此时表的数据也是正常的,不过此时采用哪种编码都读不到所有完整的数据。这样数据产生的原因很多,比如其中一种可能性就是表编码多次变更而且每次变更不彻底导致(变更不彻底,我之前的篇章里有介绍)。举个例子,表 t3 的编码之前是 utf8mb4,现在是 gbk,而且两次编码期间都被写入了正常的数据。
3)每个字段的编码不一致,导致乱码和第二点一样的场景。不同的是:非记录间的编码不统一,而是每个字段编码不统一。举个例子,表 c1 字段 a1,a2。a1 编码 gbk,a2 编码是 utf8mb4。那每个字段单独读出来数据是完整的,但是所有字段一起读出来,数据总会有一部分乱码。
三、LATIN1
还有一种情形就是以 LATIN1 的编码存储数据
估计大家都知道字符集 LATIN1,LATIN1 对所有字符都是单字节流处理,遇到不能处理的字节流,保持原样,那么在以上两种存入和检索的过程中都能保证数据一致,所以 MySQL 长期以来默认的编码都是 LATIN1。这种情形,看起来也没啥不对的点,数据也没乱码,那为什么还有选用其他的编码呢?原因就是对字符存储的字节数不一样,比如 emoji 字符 "❤",如果用 utf8mb4 存储,占用 3 个字节,那 varchar(12) 就能存放 12 个字符,但是换成 LATIN1,只能存 4 个字符。
㈧ 新建的数据库编码要设置为utf-8怎么设置
phpmyadmin 创建数据库的默认编码是:latin1_swedish_ci
修改默认编码的方法是
1.登录phpmyadmin
2.在导航部分点:变量
3.Ctrl+F 查找:latin1_swedish_ci
4.把所有的带有latin1_swedish_ci 修改为 想要的编码,设置为:utf8_general_ci
5.然后可以在sql命令控制台输入 :show variables like '%char%';
㈨ mysql数据库字符集选择,utf8还是utf8mb4更好
这要看你自己了,为了节省空间,一般情况下使用utf8也就够了,
为了兼容性更好点就用utf8mb4了;
utf8mb4编码专门用来兼容四字节的unicode。utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。