ASP.net連線mysql資料庫中文亂碼問題的解決方法
阿新 • • 發佈:2019-01-23
1. 修改mysql的配置。
到mysql server的安裝目錄下找到my.ini,修改[mysql]小節中的default-character-set為utf8
[mysql]
default-character-set=utf8
2. 修改mysql server的字符集
如果有mysql客戶端查詢工具,可以直接連線。否則通過命令列進入mysql安裝目錄的bin目錄下並依次分別輸入以下各行內容並分別回車。
第一個是用來登陸mysql,此處使用者名稱為root,第二行是密碼123,後邊六行用來修改mysql的字符集。後邊六行可以一次性複製到 mysql> 之後然後回車。
mysql -u root -p 123 SET character_set_client = utf8; SET character_set_server = utf8; SET character_set_results = utf8; SET character_set_connection = utf8; SET collation_server = utf8_general_ci ; SET collation_database = utf8_general_ci ;
3. 修改ASP.net工程中的web.xml中資料庫連線字串:
connectionString="server=127.0.0.1;User Id=root;password=123;Persist Security Info=True;database=myDBName;charset=utf8"
即:後邊的charset為utf8。
4. 只有新建的資料庫和表才能支援中文。完成以上操作後,建立table時,最後要加上CHARSET=utf8。如下所示:
CREATE TABLE `test`.`user` ( `name` varchar(45) NOT NULL DEFAULT '', PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;