往MYSQL裡寫中文就變問號?

2021-05-21 18:49:50 字數 1077 閱讀 2790

問題解決了,原因是在my.cnf中缺少了如下**:

[client]

default-character-set=utf8

[mysqld]

default-character-set=utf8

如果不加以上**,那麼即便mysql編譯安裝時指定的編碼是utf8,那麼在建庫時其預設編碼仍是latin1,而由於字符集的繼承性,庫中的表也是latin1的了。

2.當前mysql伺服器字符集設定

show variables like 'character_set_%';

3.當前mysql伺服器字符集校驗設定

show variables like 'collation_%';

4.顯示某資料庫字符集設定

show create database 資料庫名;

5.顯示某資料表字符集設定

show create table 表名;

6.修改資料庫字符集

alter database 資料庫名 default character set 'utf8';

7.修改資料表字符集

alter table 表名 default character set 'utf8';

8.建庫時指定字符集

create database 資料庫名 character set gbk collate gbk_chinese_ci;

9.建表時指定字符集

create table `mysqlcode` (

`id` tinyint( 255 ) unsigned not null auto_increment primary key ,

`content` varchar( 255 ) not null

) type = myisam character set gbk collate gbk_chinese_ci;

個人認為以上方法不太好用,如果都不行吧資料庫做備份,之後mysql server instance config裡將例項刪了重新建乙個(主意字元編碼),如果還不行重灌mysql(解除安裝mysql時要注意,非常複雜,具體方法我分享了)

JDBC往mysql裡存入中文的問題

之前出現過這樣的問題,後來處理完就忘記了,這次記錄以下,除了將資料庫的編碼格式設定為utf 8之外 還需要將dao層連線資料庫的url設定為 jdbc mysql localhost 埠 資料庫名?characterencoding utf 8 再使用連線 connection drivermana...

往死裡寫 mainloop函式

void mainloop void else if npdoutputsize 0 if al event enabled disable esc int endif if al event enabled enable esc int endif if ecat timer int 這裡沒有中斷...

只要搞不死就往死裡搞

團隊分工 組 員比例權重 參與工作範圍 朱世傑60 製作專案logo,撰寫用例圖,撰寫需求說明書,介面原型 曹曄寧40 部落格及排版等,介面原型,使用場景描述,演講,ppt,產品訂單v1.0 優先順序功能定義1 車輛資訊錄入 將進入停車場的車輛所有資訊錄入系統,方便使用者查詢 2車位查詢 能夠清晰地...