標籤:字元集 校對規則
編碼:電腦都是二進位儲存,因此需要將顯示符號轉換成位元才能儲存,每個字元所轉換成的位元,就是字元編碼。
字元集
字元用於顯示的抽象符號。字元集是一套字元與字元編碼的集合。
常見的字元集編碼:
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\Gshow 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字元集以及校對規則