1,set names 『charset_name』:
set names顯示客戶端傳送的sql語句中使用什麼字符集。因此,set names 'utf8' 語句告訴伺服器將來從這個客戶端傳來的資訊採用字符集utf8」。它還為伺服器傳送回客戶端的結果指定了字符集。
2、連線字符集和校對
(1) 一些字符集和校對規則系統變數與客戶端和伺服器的互動有關。
· 伺服器字符集和校對規則可以用作character_set_server和collation_server變數的值。
· 預設資料庫的字符集和校對規則可以用作character_set_database和collation_database變數的值。
在客戶端和伺服器的連線處理中也涉及了字符集和校對規則變數。
每乙個客戶端有乙個連線相關的字符集和校對規則變數。
(2)考慮什麼是乙個「連線」:它是連線伺服器時所作的事情。
客戶端傳送sql語句,例如查詢,通過連線傳送到伺服器。
伺服器通過連線傳送響應給客戶端,例如結果集。
對於客戶端連線,這樣會導致一些關於連線的字符集和 校對規則的問題,這些問題均能夠通過系統變數來解決:
(3) 當查詢離開客戶端後,在查詢中使用哪種字符集?
伺服器使用character_set_client變數作為客戶端傳送的查詢中使用的字符集。
(4) 伺服器接收到查詢後應該轉換為哪種字符集?
轉換時,伺服器使用character_set_connection和collation_connection系統變數。它將客戶端傳送的查詢從character_set_client系統變數轉換到character_set_connection(除非字串文字具有象_latin1或_utf8的引介詞)。collation_connection對比較文字字串是重要的。對於列值的字串比較,它不重要,因為列具有更高的 校對規則優先順序。
(5)伺服器傳送結果集或返回錯誤資訊到客戶端之前應該轉換為哪種字符集?
character_set_results變數指示伺服器返回查詢結果到客戶端使用的字符集。包括結果資料,例如列值和結果元資料(如列名)。
mysql字符集修改 MySql字符集修改
問題分析 普通的字串或者表情都是佔位3個位元組,所以utf8足夠用了,但是移動端的表情符號佔位是4個位元組,普通的utf8就不夠用了,為了應對無線網際網路的機遇和挑戰 避免 emoji 表情符號帶來的問題 涉及無線相關的 mysql 資料庫建議都提前採用 utf8mb4 字符集,這必須要作為移動網際...
mysql 修改字符集
一 修改my.ini配置檔案 mysql配置檔案 character set server utf8 設定字符集 重啟mysql資料庫服務 檢視當前資料庫字符集 show variables like character 二 修改資料庫字符集 alter database 資料庫名 characte...
mysql 修改字符集
較好的常規辦法 建立制定字符集的資料庫 需求描述 在建立db的時候指定字符集.操作過程 1.使用create database語句建立資料庫 mysql create database if not exists test03 default character set utf8 query ok,...