有關mysql資料庫的編碼

2022-08-01 01:33:15 字數 777 閱讀 2465

今天在通過表單給php提交資料,然後插入到資料庫中。網頁與php的編碼格式均為utf-8,在插入到資料庫中時也設定了$this->query("set names utf8;");

但是還是出現了在mysql中讀取資料出現亂碼和問號的情況。後來實在是無解,將mysql設定為gbk編碼,居然能正確的顯示,簡直就是顛覆了三觀。。至今不知道為什麼。

但是在這過程中也了解到了一些有關編碼的知識:

在mysql中設定mysql的編碼通過修改配置檔案my.ini,該檔案在mysql的安裝路徑下。

[mysql   //客戶端

default-character-set=utf8

[mysqld]   //伺服器端

character-set-server=utf8

在mysql客戶端下操作:

show variables like 'character%';檢視字符集

show variables like 'collation_%';

解決亂碼的方法是,在執行sql語句之前,將mysql以下三個系統引數設定為與伺服器字符集character-set-server相同的字符集。

character_set_client:客戶端的字符集。

character_set_results:結果字符集。

character_set_connection:連線字符集。

設定這三個系統引數通過向mysql傳送語句:set names utf8

即在php中執行:mysql_query(「set names utf8」);

mysql資料庫編碼

1.去mysql的安裝目錄下的 bin目錄下 執行 mysqlinstanceconfig.exe 在語言設定的頁面有三個選項 standard character set best support for multilingualism manual selected default charac...

資料庫編碼mysql

show variables like character 針對 很多表的操作 1 分別匯出資料和表結構。2 修改表結構中的charset gbk或者charsetgbk為charset utf8或者charsetutf8 3 匯入表結構。4 匯入資料。編碼格式 檢視某個表的 編碼格式 命令 sho...

mysql資料庫編碼設定 MySQL資料庫編碼設定

預設情況下mysql資料庫使用的是拉丁 lantin1 字元進行編碼 如輸入命令show variables like character 檢視資料庫編碼 variable name value character set client latin1 character set connection...