如何设置mysql数据库为utf-8编码

如何设置mysql数据库为utf-8编码,第1张

你要是用一个可视化 *** 作的界面就简单了,就比如navicat for mysql右键数据库-->数据库属性--->字符集--->utf-8 unicode /排序规则--->utf8-gernal-ci就行了

如果没有配置好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;

mysql如何更改数据库字符编码?借助客户端工具很容易就可以更改了,下面来看一下。

01

打开navicat客户端工具,在左边找到要更改的数据库。

02

右键点击这个数据库,在菜单上点击数据库属性选项。

03

在d出的属性窗口上,点击默认字符集下的下拉框。

04

在d出的下拉选项里,点击选中要使用的字符集就行了,比如选择常用的utf8字符集,点击ok按钮就行了。

方法如下:

我们先建一个DEMO表,来做我们今天的实现,建表语句如下:

CREATE TABLE

DEMO

(

NAME VARCHAR(50) COMMENT '姓名',

SEX CHAR(1) COMMENT '性别',

PRIMARY KEY (NAME)

)

ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='例子表';

并且select查询一下,如下图

增加一个AGE字段,

ALTER TABLE DEMO ADD AGE CHAR(3);

select查询一下,如下图

请对比上下图,可以发现 多出了一个AGE字段,此处是CHAR类型的。

那么如何删除我们刚加的字段呢,

ALTER TABLE DEMODROP COLUMN AGE;

select查询一下,如下图

请对比上下图,可以发现 AGE字段被删除掉了

我们在把这个字段加回来

ALTER TABLE DEMO ADD AGE CHAR(3);,

我们用视图工具DBVISUAL看下表机构,这时AGE字段是CHAR类型的

我们如果需要把这个字段修改为VARCHAR类型的怎么办呢,

ALTER TABLE DEMO MODIFY  AGE   VARCHAR(20),

然后我们在用视图工具DBVISUAL看下表机构,这时AGE字段是VARCHAR类型的

以下是修改为utf-8编码的过程:
1、关闭mysql服务
[plain] view plaincopy
service mysql stop
2、修改 /etc/mysql/mycnf (默认的安装路径)
[plain] view plaincopy
vim /etc/mysql/mycnf
打开mycnf后,在文件内的[mysqld]下增加如下两行设置:
[plain] view plaincopy
character_set_server=utf8
init_connect='SET NAMES utf8'
保存退出。
3、重新启动mysql服务
[plain] view plaincopy
service mysql start
至此,完成修改默认编码,登陆mysql后重新使用show variable like '%character%'获得的输出。

就是你在建表的时候,在字段后面,追加设置为utf8。
Mysql要解决中文乱码,最好是你把数据库的默认编码都改掉,我一般这样处理:
在mysql安装目录下的myini文件中做如下修改:
[mysql]下面修改
default-character-set=utf8
[mysqld]下面修改
default-character-set=utf8
把编码统一成utf8,这样做的目的在于,即可以允许你往数据中插入中文字符,又可避免中文乱码的问题。

1去mysql下找到文件myini配置文件用记事本打开,找到 default-character-set=latin1,character-set-server=latin1;将latin1改为utf-8或者gbk,修改完之后保存。
2我的电脑右击 “管理”进入之后选择“服务和应用程序”下的“服务”,找到“mysql”之后右击选择“重新启动”。


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

原文地址: https://outofmemory.cn/yw/13336737.html

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

发表评论

登录后才能评论

评论列表(0条)

保存