1. 程式人生 > >c#操作MySQL資料庫中文出現亂碼(很多問號)的解決方法

c#操作MySQL資料庫中文出現亂碼(很多問號)的解決方法

前題:修改discuz論壇帖子老連線(從NT版轉到PHP版的discuzX3),帖子裡有很多引用,有連結都是.aspx這樣的連結。

需要將這些連結改到當前論壇的連結。

思路:用asp.net程式獲取含.aspx的帖子內容,用正則替換舊連結,本地測試OK?在伺服器上就出現了一部分成功,一部分出現了很多問號

“???????????”;找了很久原因,知道是字符集的原因,對比了下本地和伺服器上資料庫的字符集,都是utf-8;沒問題啊!怎麼會出現問號呢?頭大了!

在c#程式碼中把原帖子內容,和替換後的內容寫入到文字檔案。一對比,修改前和修改後都沒有問號啊,怎麼寫入資料庫就有呢?看了配置檔案web.config中的資料庫連線字串,

發現沒有指定字符集,原因就在這裡了。於是在連線字串中新增配置引數charset=utf8;再測試,OK可以了。

原來這麼簡單,折騰了一兩天!哎!