MySQL字符集 怎樣才能保證不發生亂碼

2021-08-22 18:37:49 字數 1034 閱讀 9769

mysql字符集:怎樣才能保證不發生亂碼
資料庫中關於字符集的種類有很多,對程式設計有影響的主要是客戶端字符集和資料庫字符集(還有乙個伺服器字符集,不知道幹什麼用的)。 

資料庫中常用的操作就是儲存資料和讀取資料,在這過程中,亂不亂碼和資料庫字符集貌似沒有什麼關係。我們只要保證寫入時選擇的字符集和讀取時選擇的字符集一致,即只需保證兩次操作的客戶端字符集一致即可。

客戶端字符集的設定,依據客戶端不同方法不同:

1. 使用控制台連線,在my.ini檔案中的client項裡面設定;

2. 使用ems連線,優先使用ems連線配置的字符集,預設使用my.ini檔案中的設定;

3. jdbc連線,在連線串中指定:

jdbc:mysql: ;characterencoding=gbk

在寫入時mysq會將客戶端指定的字符集轉換成資料庫字符集存入資料檔案,讀取時又將資料庫字符集轉換成客戶端指定的字符集展示給客戶端,把客戶端字符集和資料庫字元設定一致,顯而易見的好處是免掉轉換的效能損耗;另外,如果考慮到以後資料庫的遷移,將資料庫字符集設定為大多數資料庫都支援的字符集會省掉很**煩。

1. 檢視 mysql 資料庫伺服器字符集,資料庫字符集和客戶端字符集

show variables like '%char%';

character_set_client,客戶端字符集

character_set_database,資料庫字符集

character_set_server,伺服器字符集

2. 檢視 mysql 資料表(table) 的字符集

show table status from tablename like '%countries%';

3. 檢視 mysql 資料列(column)的字符集。

show full columns from tablename;

4. 檢視當前安裝的 mysql 所支援的字符集。

show char set;

資料引用:

mysql 集群字符集 Mysql 字符集

字符集與字元比較 字符集字符集是某種字元的集合,比如最常見的ascii碼,由127個字元組成,只需要乙個位元組就能表示 我們常說的字符集還是gbk iso utf8 mysql 我們使用得最多的字符集就是gbk 和 utf8了 他們都是變長字符集,如果字元在ascii範圍內就使用乙個位元組表示,其他...

mysql字符集 MySQL字符集選擇

一 怎樣選擇合適的字符集 對mysql資料庫來說,字符集很重要,因為資料庫儲存的資料大部分都是各種文字,字符集對資料庫的儲存,處理效能都會有所影響。主要考慮一下幾方面的因素 1.滿足應用支援語言的需求,應用處理各種各樣的文字,發布到使用不同語言的國家或地區,可以選擇unicode字符集,mysql的...

mysql api 字符集 MySQL字符集

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