mysql api 字符集 MySQL字符集

2021-10-18 20:31:05 字數 1137 閱讀 5590

mysql字符集包括字符集(character)和(collation)兩個概念。字符集是用來定義mysql儲存字串的規則,校對規則則是定義了比較字串的方式。字串和校對規則是一對多的》關係。使用命令:show collation like 'gbk';可檢視相關的校對規則;使用:show character set;檢視所有可用的字符集。

校對規則命名約定:它們以其相關的字符集開頭,通常包括乙個語言名,以乙個_ci(不區分大小寫)、_cs(大小寫敏感)或_bin(二元,即比較是基於字符集編碼的值而與language無關)結束。

mysql的字符集和校對規則有4個級別的預設值:伺服器級、資料庫級、表級和字段級。

伺服器字符集設定(預設為:latin1作為伺服器字符集):

在my.cnf中設定:default-character-set=gbk

在伺服器啟動時指定:mysqld --default-character-set=gbk

在編譯的時候制定:./configure --with-character=gbk

使用命令:show variables like 'character_set_server';檢視當前伺服器使用的字符集和校對規則。

資料庫的字符集和校對規則在建立資料庫的時候指定,也可以在建立完資料庫後通過'alter table'命令進行修改。需要注意的是修改資料庫字符集不會更改已經存在的資料的字元

集。命令:show variables like 'chaacter_set_database';檢視資料庫當前使用的字符集。

表字符集和校對值:表的字符集可在床家表時指定,也可以通過alter table命令進行修改,同樣,如果表中已有記錄,修改字符集對原有的記錄並沒有應吸納個。

列字符集和校對:mysql同時支援對列級別的字符集進行定義,可以針對相同表的不同字段分別定義字符集和校對規則。

鏈結字符集和校對規則

在實際的應用訪問中,還存在客戶端和伺服器之間的字符集和校對規則的設定。

對於客戶端和伺服器的互動操作,mysql提供了3個不同的引數:character_set_client、character_set_connection和character_set_results,分別代表客戶端、鏈結和返回

結果的字符集,通常情況下,這3個字符集應該是相同的,才可以確保使用者寫入的資料能夠正確讀取出來。

mysq 字符集問題

錯誤 illegal mix of collations gbk chinese ci,implicit and gbk bin,implicit for operation sql state hy000,error code 1267 原因 資料庫的編碼與建表時的編碼不一樣 處理 如果安裝mys...

mysql字符集修改儲存 如何修改MySQL字符集

如何修改mysql字符集 一 檢視mysql的字符集 二 修改mysql配置檔案 不是安裝目錄,是資料目錄。我是用sublime開啟的。進去之後,在三個地方增加配置。第乙個 client default character set utf8 第二個 mysql default character s...

Unicode字符集和多字符集

由於各國語言的加入,ascii已經不能滿足資訊交流的需要,因此,為了能夠表示其它國家的文字,各國在ascii的基礎上制定了自己的字符集,它們正式的名稱應該是mbcs multi byte chactacter system,即多位元組字元系統 型別說明 unicode ansi 通用型別 字元wch...