通过show
创新互联是专业的虞城网站建设公司,虞城接单;提供网站设计制作、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行虞城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
variables
like
'character_set%%';查看编码
修改mysql的编码方式可以有以下几个:
1.通过配置文件修改my.ini(windows下)或/etc/my点吸烟 f(linux下)
分别添加如下内容
[mysqld]
character_server_set=utf8
[mysql]
default-character-set=utf8
[mysql.server]
default-character-set=utf8
[mysql_safe]
default-character-set=utf8
[client]
default-character-set=utf8
2.创建数据库时设置编码
create
database
test
character
set
utf8;
3.创建表时设置编码
create
table
test(id
int
primary
key)DEFAULT
charset=utf8;
4.修改数据库编码
alter
database
test
character
set
utf8;
5.修改表默认编码
alter
table
test
character
set
utf8;
6.修改字段编码
alter
table
test
modify
col_name
varchar(50)
CHARACTER
SET
utf8;
以上所述是小编给大家介绍的MySQL字符编码设置方法,希望对大家有所帮助!
1、 编辑MySql的配置文件
MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是/etc/my点吸烟 f
--在 [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 %";
显示结果应该类似如下:
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
如果仍有编码不是utf8的,请检查配置文件,也可使用mysql命令设置:
set character_set_client = utf8;
set character_set_server = utf8;
set character_set_connection = utf8;
set character_set_database = utf8;
set character_set_results = utf8;
set collation_connection = utf8_general_ci;
set collation_database = utf8_general_ci;
set collation_server = utf8_general_ci;
另外:
建立数据库时可以使用以下命令:
create database app_relation character set utf8;
use app_relation;
source app_relation.sql;
修改数据库编码的命令为:
alter database app_relation character set utf8;
1、更改服务器的编码方式,在终端输入以下命令:
mysqld--character-set-server=gbk--collation-server=gbk_chinese_ci;
2、更改某个数据库的编码方式
mysql-uroot-p
alterdatabasecharactersetgbkcollategbk_chinese_ci;
3、在创建数据库时指定编码:
mysql-uroot-p
createdatabasedb_namecharactersetgbkcollategbk_chinese_ci;
4、更改某个表的编码方式
mysql-uroot-pdb_name
altertabletable_nameconvertto charachtersetgbkcollategbk_chinese_ci;
5、在创建表时指定编码方式
mysql-uroot-pdb_name
createtabletable_name(....)charactersetgbkcollategbk_chinese_ci;
6、更改某行的编码方式
mysql-uroot-pdb_name
altertabletable_namemodifycolumn_namevarchar(20)charactersetgbkcollategbk_chinese_ci;
7、在创建列时指定编码方式:
/preprename="code"class="sql"mysql-uroot-pdb_name
createtabletable_name(...,col1varchar(20)charactersetgbkcollategbk_chinese_ci,...)charactersetutf8collateutf8_general_ci;
方法如下:
我们先建一个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类型的