mysql 字符集的系統(tǒng)變量說明
更新時間:2009年07月24日 14:57:58 作者:
mysql 字符集的系統(tǒng)變量的一些說明,大家在使用過程中,可以作個參考。
1.character_set_server和collation_server
這兩個變量是服務(wù)器的字符集。在系統(tǒng)啟動的時候可以通過--character-set-server和--collation-server來設(shè)置它們。如果沒有的話系統(tǒng)會把這兩各變量設(shè)置成默認(rèn)值latin1和latin1_swedish_ci。默認(rèn)值是編譯在程序中的,只能通過重新編譯來改變。
這兩個變量只用來為create database命令提供默認(rèn)值。
2.character_set_database和collation_database
這兩個變量是當(dāng)前數(shù)據(jù)庫的字符集。create database命令有兩個參數(shù)可以用來設(shè)置數(shù)據(jù)庫的字符集和比較規(guī)則。數(shù)據(jù)庫建立會在數(shù)據(jù)庫目錄下的db.opt文件中記錄數(shù)據(jù)庫的選項,數(shù)據(jù)庫的字符集設(shè)置也記錄在里面。當(dāng)我們用use改變當(dāng)前數(shù)據(jù)庫時,mysql會讀數(shù)據(jù)庫db.opt文件來設(shè)置這兩個變量。當(dāng)沒有當(dāng)前數(shù)據(jù)庫的時候這兩個變量等于character_set_server和collation_server。
這兩個變量只用來為create table命令提供默認(rèn)值。
3.character_set_client
這個變量用來決定mysql怎么解釋客戶端發(fā)到服務(wù)器的SQL命令文字。
4.character_set_connection和collation_connection
這兩個變量用來決定mysql怎么處理客戶端發(fā)來的SQL命令。mysql會把SQL命令文字從character_set_client編碼轉(zhuǎn)到character_set_connection然后再執(zhí)行。collation_connection在比較SQL中的直接量時使用。
5.character_set_results
當(dāng)SQL有結(jié)果返回的時候這個變量用來決定發(fā)給客戶端的結(jié)果中文字量的編碼。
還有幾個字符集概念沒有系統(tǒng)變量表示。
6.表的字符集
create table 的參數(shù)里可以設(shè)置,為列的字符集提供默認(rèn)值。
7.列的字符集
決定本列的文字?jǐn)?shù)據(jù)的存儲編碼。列的比較規(guī)則比collation_connection高。也就是說mysql會把SQL中的文字直接量轉(zhuǎn)成列的字符集后再與列的文字?jǐn)?shù)據(jù)比較。
8.character_set_system
這是元數(shù)據(jù)的字符集,數(shù)據(jù)庫,表和列的定義都是用的這個字符集。它有一個定值, 是utf-8
這兩個變量是服務(wù)器的字符集。在系統(tǒng)啟動的時候可以通過--character-set-server和--collation-server來設(shè)置它們。如果沒有的話系統(tǒng)會把這兩各變量設(shè)置成默認(rèn)值latin1和latin1_swedish_ci。默認(rèn)值是編譯在程序中的,只能通過重新編譯來改變。
這兩個變量只用來為create database命令提供默認(rèn)值。
2.character_set_database和collation_database
這兩個變量是當(dāng)前數(shù)據(jù)庫的字符集。create database命令有兩個參數(shù)可以用來設(shè)置數(shù)據(jù)庫的字符集和比較規(guī)則。數(shù)據(jù)庫建立會在數(shù)據(jù)庫目錄下的db.opt文件中記錄數(shù)據(jù)庫的選項,數(shù)據(jù)庫的字符集設(shè)置也記錄在里面。當(dāng)我們用use改變當(dāng)前數(shù)據(jù)庫時,mysql會讀數(shù)據(jù)庫db.opt文件來設(shè)置這兩個變量。當(dāng)沒有當(dāng)前數(shù)據(jù)庫的時候這兩個變量等于character_set_server和collation_server。
這兩個變量只用來為create table命令提供默認(rèn)值。
3.character_set_client
這個變量用來決定mysql怎么解釋客戶端發(fā)到服務(wù)器的SQL命令文字。
4.character_set_connection和collation_connection
這兩個變量用來決定mysql怎么處理客戶端發(fā)來的SQL命令。mysql會把SQL命令文字從character_set_client編碼轉(zhuǎn)到character_set_connection然后再執(zhí)行。collation_connection在比較SQL中的直接量時使用。
5.character_set_results
當(dāng)SQL有結(jié)果返回的時候這個變量用來決定發(fā)給客戶端的結(jié)果中文字量的編碼。
還有幾個字符集概念沒有系統(tǒng)變量表示。
6.表的字符集
create table 的參數(shù)里可以設(shè)置,為列的字符集提供默認(rèn)值。
7.列的字符集
決定本列的文字?jǐn)?shù)據(jù)的存儲編碼。列的比較規(guī)則比collation_connection高。也就是說mysql會把SQL中的文字直接量轉(zhuǎn)成列的字符集后再與列的文字?jǐn)?shù)據(jù)比較。
8.character_set_system
這是元數(shù)據(jù)的字符集,數(shù)據(jù)庫,表和列的定義都是用的這個字符集。它有一個定值, 是utf-8
相關(guān)文章
高并發(fā)狀態(tài)下Replace Into造成的死鎖問題解決
本文主要介紹了高并發(fā)狀態(tài)下Replace Into造成的死鎖問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01MySQL/MariaDB 如何實現(xiàn)數(shù)據(jù)透視表的示例代碼
這篇文章主要介紹了MySQL/MariaDB 如何實現(xiàn)數(shù)據(jù)透視表的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04MYSQL數(shù)據(jù)庫中的現(xiàn)有表增加新字段(列)
MYSQL 增加新字段的sql語句,需要的朋友可以參考下。2010-05-05iOS開發(fā)runloop運行循環(huán)機制學(xué)習(xí)
這篇文章主要為大家介紹了iOS開發(fā)runloop運行循環(huán)的機制學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07