Mysql字符集以及校對規則

2022-04-09 08:18:53 字數 1360 閱讀 5874

編碼:計算機都是二進位制儲存,因此需要將顯示符號轉換成二進位制數才能儲存,每個字元所轉換成的二進位制數,就是字元編碼。

字元用於顯示的抽象符號。字符集是一套字元與字元編碼的集合。

常見的字符集編碼:

ascii字符集,gb2312字符集,gbk字符集,latin1字符集,unicode字符集等。

show character set;可以獲得mysql支援的所有字符集。

修改資料庫字符集

alter database liguodong character set utf8;

mysql可以使用多種字符集儲存資料。

mysql可以針對字段,表,資料庫,伺服器進行字符集的設定,還可以設定連線字符集(客戶端與伺服器端互動時)。

編碼相關變數的含義:

可以在my.ini中:character-set-server=utf8修改伺服器的編碼設定。

伺服器字符集:

連線字符集:

每一套編碼字符集都有與之相關的校對規則。校對規則指的是當前字符集內,字元之間的比較關係。

每個字符集都提供乙個或多個校對規則。

通常的命名規則是:字符集_語言名_ci|cs|bin

常見的ci不區分大小寫。cs區分大小寫,bin位元組比較。

檢視校對規則指令:

show collation;

show collation like 'gbk%';

在設定字符集的時候,可以設定當前字符集所採用的校對規則。不過不設定校對規則,那麼每乙個字符集,都有乙個預設的校對規則。

以gbk為例,比較chinese_ci,bin之間的區別

create table tab3(

name varchar(10)

) character set gbk collate gbk_chinese_ci;

create table tab4(

name varchar(10)

) character set gbk collate gbk_bin;

預設是gbk_chinese_ci,所以不會顯示字符集。

show create table tab3\g

show create table tab4\g

insert into tab3 values('a');

insert into tab3 values('b');

insert into tab3 values('c');

insert into tab4 values('a');

insert into tab4 values('b');

insert into tab4 values('c');

影響資料的儲存,字符集。

影像資料的比較,校對集。

mysql字符集和校對規則 Mysql校對集

簡要說明 字符集和校對規則 字符集是一套符號和編碼。校對規則是在字符集內用於比較字元的一套規則。mysql在collation提供較強的支援,oracel在這方面沒查到相應的資料。校對規則一般分為兩類 binary collation,二元法,直接比較字元的編碼,可以認為是區分大小寫的,因為字符集中...

mysql字符集和校對規則 Mysql校對集

字符集的概念大家都清楚,校對規則很多人不了解,一般資料庫開發中也用不到這個概念,mysql在這方便貌似很先進,大概介紹一下 簡要說明 字符集和校對規則 字符集是一套符號和編碼。校對規則是在字符集內用於比較字元的一套規則。mysql在collation提供較強的支援,oracel在這方面沒查到相應的資...

MySQL字符集和校對規則

本文對mysql支援的常規字符集和校對規則作了乙個簡單的說明,並介紹了mysql常用字符集變數的含義和設定,字符集變數的不恰當設定有可能導致包括亂碼在內的諸多問題。字符集是一套符號和編碼。校對規則是在字符集內用於比較字元的一套規則。mysql 伺服器能夠支援多種字符集,可以使用 show chara...