Mysql应用mysql字符编码怎么修改

Mysql应用mysql字符编码怎么修改,第1张

概述介绍《Mysql应用mysql字符编码怎么修改》开发教程,希望对您有用。

《MysqL应用MysqL字符编码怎么修改》要点:@H_403_3@本文介绍了MysqL应用MysqL字符编码怎么修改,希望对您有用。如果有疑问,可以联系我们。

导读:本节内容:MysqL字符编码修改办法默认情况下,可以在4个级别分别设定MysqL的字符集和校验规则,分别是server、database、table和column.还...

MysqL入门本节内容:
MysqL字符编码修改办法

MysqL入门默认情况下,分别是server、database、table和column.
还可以零丁对一串字符串设定其字符集和校验规则.

MysqL入门一,server级修改MysqL字符编码:
在启动MysqL服务时,可以指定MysqL server的字符集和校验规则,通过如下方式:
MysqLd –character-set-server=latin1 –collation-server=latin1_swedish_ci
如果不亲自指定它们,那么MysqL就会使用默认值.一般是latin1和latin1_swedish_ci.
当然这个默认值是可以修改的,但是办法只有一种,那就是重编译源代码.采用如下方式:
./configure –with-charset=gbk –with-collation=gbk_bin

MysqL入门如何查询当前的server的字符集和校验规矩的值,可以查看系统参数character_set_server和collation_server:
 

MysqL入门MysqL> show variables like 'character_set_server%';
+----------------------+--------+
| Variable_name        | Value  |
+----------------------+--------+
| character_set_server | latin1 |
+----------------------+--------+
1 row in set (0.00 sec)

MysqL入门MysqL> show variables like 'collation_server%';
+------------------+-------------------+
| Variable_name    | Value             |
+------------------+-------------------+
| collation_server | latin1_swedish_ci |
+------------------+-------------------+
1 row in set (0.00 sec)
 

MysqL入门server的字符集和校验规则的唯一作用便是,当database的字符集和校验规则没有指定时,就默认使用server的对应值.

MysqL入门二,database级修改MysqL字符编码:
在创立和修改数据库时,可以指定其字符集和校验规则:
 

CREATE DATABASE db_name
[[DEFAulT] CHaraCTER SET charset_name]
[[DEFAulT] ColLATE collation_name];
ALTER DATABASE db_name
[[DEFAulT] CHaraCTER SET charset_name]
[[DEFAulT] ColLATE collation_name];
 

MysqL入门对应查看当前数据库的字符集和校验规矩的系统参数是’character_set_database’和’collation_database’,如下:
 

MysqL入门MysqL> show variables like 'character_set_database';
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| character_set_database | gbk   |
+------------------------+-------+
1 row in set (0.00 sec)

MysqL入门MysqL> show variables like 'collation_database';
+--------------------+---------+
| Variable_name      | Value   |
+--------------------+---------+
| collation_database | gbk_bin |
+--------------------+---------+
1 row in set (0.00 sec)
 

MysqL入门数据库的字符集和校验规则的作用有二,其一是当没有在表级别知道它们,那么默认就使用数据库根本的值;其二是在“load data infile”时也起到了作用.

MysqL入门三,table级修改MysqL字符编码:
在创建表或者修改表布局时,可以通过如下方式指定这个表的字符集和校验规则:
 

CREATE table tbl_name (column_List)
[[DEFAulT] CHaraCTER SET charset_name] [ColLATE collation_name]]
ALTER table tbl_name
[[DEFAulT] CHaraCTER SET charset_name] [ColLATE collation_name]

MysqL入门四,column级改动MysqL字符编码
具体的表的具体的某个字段,也可以指定其字符集和校验规则,如下:
 

col_name {CHAR | VARCHAR | TEXT} (col_length)
[CHaraCTER SET charset_name] [ColLATE collation_name]

MysqL入门那么,这四个级其余字符集和校验规则的指定(级别高低server>database>table>column),MysqL最终以何种形式来存储和显示字符串的呢?
1、本级别中,如果同时指定character set和collate,那么就使用指定的值;
2、本级别中,只指定character set而没有指定collate,那么就使用指定的character set值和其对应的默认的collation值;
3、本级别中,只指定collate而没有指定character set,那么就使用指定的collation值和其所对应的character set值;
4、本级别中,都没有指定这2个值,那么默认就使用上一级其余对应的值.

MysqL入门国家字符集:
MysqL中国家字符集的概念,其表现使用预先定义的字符集,在MysqL5.1中使用utf8作为其预先的定义的字符集.
因此,下面几种类型的定义,其实是等效的:
 

CHAR(10) CHaraCTER SET utf8
NATIONAL CHaraCTER(10)
NCHAR(10)

MysqL入门下面几种类型也是等效的:
 

VARCHAR(10) CHaraCTER SET utf8
NATIONAL VARCHAR(10)
NCHAR VARCHAR(10)
NATIONAL CHaraCTER varying(10)
NATIONAL CHAR varying(10)
 

MysqL入门字符串的字符集和校验规矩的设置问题,请稍等!

欢迎参与《MysqL应用MysqL字符编码怎么修改》讨论,分享您的想法,内存溢出PHP学院为您提供专业教程。

总结

以上是内存溢出为你收集整理的Mysql应用mysql字符编码怎么修改全部内容,希望文章能够帮你解决Mysql应用mysql字符编码怎么修改所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: https://www.outofmemory.cn/sjk/1157574.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存