mysql数据库编码问题_MySQL数据库编码问题如何解决

本文详细介绍了MySQL数据库的编码设置,包括服务器编码、数据库编码、表编码和字段编码的创建与修改方法。通过设置合适的编码,可以确保中英文数据的正确存储。同时,文章强调了在导入数据前需确保文件编码为UTF-8,并提供了相应的SQL脚本示例。
摘要由CSDN通过智能技术生成

2ff34e647e2e3cdfd8dca593e17d9b0a.png

数据库编码选择的一般准则:

1、GBK/GB2312

适合纯中文存储的数据库

2、LATIN1

适合于纯英文的存储

3、UTF8

适合中英文混合编码的存储。

MySQL数据库的编码分为四级:

一、Mysql数据库服务器编码

设置步骤:

(1)编辑MySql的配置文件

MySql的配置文件在MacOSX系统中是在/etc/my.cnf

–在 [mysqld] 标签下加上两行1

2character_set_server=utf8

init_connect='SET NAMES utf8'

(2)重新启动MySql服务1service mysql start

(3)查看设置结果

登录MySql命令行客户端:打开命令行1mysql –u root –p 回车

输入密码

进入mysql后 执行 :1show variables like '%character%';

显示结果应该类似如下:

+————————–+————————————————+

| Variable_name | Value |

+————————–+————————————————+

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | utf8 |

| character_set_filesystem | binary |

| character_set_results | utf8 |

| character_set_server | utf8 |

| character_set_system | utf8 |

| character_sets_dir | /Applications/XAMPP/xamppfiles/share/charsets/ |

+————————–+————————————————+

(4)建库导入数据

导入sql脚本文件前,先确保该脚本文件及内容格式为UTF-8编码格式,

同以上方法登入mysql命令行,1use 库名

进入相应数据库,然后进行如下操作:1

2set names utf8;

source sql 脚本文件名;

二、Mysql数据库编码

(可以在创建的时候指定,也可以在创建之后进行修改)

方法1、1create database db_name default character set utf8

方法2、1create database db_name default charset=utf8

修改DB的编码:1alter database db_name default character set utf8;

三、Mysq数据库中表的编码

(可以在创建的时候指定,也可以在创建之后进行修改)

方法1、1

2

3

4create table table_name

(

......//字段信息

)ENGINE=InnoDB DEFAULT character set utf8;

方法2、1

2

3

4create table table_name

(

......//字段信息

)default charset=utf8;

修改表table的编码:1alter table table_name default character set utf8

四、Mysql数据库表中字段的编码

(可以在创建的时候指定,也可以在创建之后进行修改)

方法:1

2

3

4create table table_name

(

filed_name varchar(20) character set utf8 //注意不能有default

);

修改字段field编码:

方法:

假如字段的限制是 varchar(20) not null default ‘’;1alter table table_name change old_filed_name new_filed_name varchar(20) not null default 'abc' character set utf8;

change和modify的区别,modify只能修改字段属性,change可以修改字段名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值