show VARIABLES like 'character_%';
你先查看一下,是不是都是utf8
不是的設置
比如:
set character_set_server=utf8;
------------------------------------------------------------
一般創建數據庫的時候
CREATE DATABASE `kent` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
-------------------------------------------------------
表創建的時候:
CREATE TABLE IF NOT EXISTS `xc_user` (
`ID` int(4) NOT NULL,
`Name` varchar(20) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
------------------------------------------------------
最後進入
my.ini/my.cnf
[mysql]
no-auto-rehash
default-character-set = utf8 // mysql5.5以上:character-set-server=utf8
[mysqld]
port=3306
default-character-set=utf8
default-storage-engine=INNODB --這個自己決定
------------------------------------------------------------------
workbench 重新連接這個庫,workbench做的接近完美。
------------------------------------------------------------------
對於C調用顯示亂碼
可在mysql_real_connect()函數模塊之後添加:
if ( mysql_set_character_set( conn_ptr, "utf8" ) ) {
fprintf ( stderr , "%s\n" , mysql_error(conn_ptr) ) ;
}
修改