node mysql模組寫入中文字元時的亂碼問題

2022-04-03 12:31:22 字數 618 閱讀 5313

剛剛發現乙個奇怪的問題:

在node上用mysql模組將資料寫入資料庫的時候,在cmd上開啟mysql發現select出來的中文是亂碼。但這就奇怪了。

因為本機在安裝mysql的時候就已經在配置檔案將字符集設定為utf-8.

然後我在mysql輸入status:

再輸入:show variables like '%char%';

嗯。。。

然後我在node上檢測,發現獲取並解析了post的資料後,中文不是亂碼,寫入之前不是亂碼,寫入再讀出也不是亂碼。。

所以伺服器上的讀寫是沒問題的,難道是bash和cmd鬧彆扭?hahaha 

然後在npm文件看到mysql模組的一段話:

模組已經預設幫我們設定了utf8類。好吧。。

暫時認為是同時開cmd的mysql和node的mysql導致的衝突(雖然可能性不太大)

不過亂碼問題,都是因為字符集沒有設定好,下面給兩篇剛剛看到的文章:

logging日誌模組寫入中文編碼錯誤解決辦法

一 問題 使用python的logging模組記錄日誌,有時會遇到中文編碼問題錯誤。二 解決辦法 在logging.filehandler path 中新增指定編碼方式 encoding utf 8 即可,logging.filehandler path,encoding utf 8 示例日誌模組 ...

hibernate mysql寫入中文亂碼 解決

啟動hibernate專案,自動建立表,插入資料之後發現寫入表裡的資料裡的中文是亂碼。按如下方法解決了 修改資料庫的字符集為utf 8,這個可以通過mysql的客戶端軟體裡右鍵要修改的資料庫的屬性更改。修改client預設字符集為utf8。windows下在mysql安裝目錄 我的計算機作業系統是w...

MYSQL中文寫入報錯

一些關於檢視和修改字符集的mysql知識 檢視mysql的字符集 show variables where variable name like char 檢視某乙個資料庫字符集 show create database enterprises 注 enterprises為資料庫 檢視某乙個資料表字...