當我們通過php訪問mysql資料庫時,就算設定了表的預設字符集為utf8,並且通過utf-8編碼傳送查詢,你會發現存入資料庫的仍然是亂碼。問題就出在connection連線層上。解決方法是在傳送查詢前執行一下下面這句:
1. set names 'utf8';
它相當於下面的三句指令:
set character_set_client = utf8;
set character_set_results = utf8;
set character_set_connection = utf8;
2. 建立資料庫
mysql> create database name character set utf8;
3. 建立表
create table `type` (
`id` int(10) unsigned not null auto_increment,
`flag_deleted` enum('y','n') character set utf8 not null default 'n',
`flag_type` int(5) not null default '0',
`type_name` varchar(50) character set utf8 not null default '',
primary key (`id`)
) default charset=utf8;
4. 修改資料庫成utf8的.
alter database name character set utf8;
5. 修改表預設用utf8.
alter table type character set utf8;
6. 修改欄位用utf8.
alter table type modify type_name varchar(50) character set utf8;
php mysql編碼 PHP Mysql編碼問題
這幾天搞了個php讀取excel表再讀入mysql的東西,但是被其中的中文亂碼搞暈了。通過上網翻閱不少帖子之後,思路清晰了不少,以此記錄下來學習學習 需要在幾個地方設定編碼為utf 瀏覽器器端設定 php 在語句最開頭加入 或.在php語句中加入 header content type text h...
設定編碼格式
1.控制層利用註解設定編碼格式 返回物件時用utf 8編碼,返回字串時用iso 8859 1格式 手動轉碼 2.設定響應編碼 response.setcontenttype text html charset utf 8 3.全域性字符集設定 tomcat中設定 在tomcat home conf ...
pl sql developer 編碼格式設定
一 pl sql developer 中文字段顯示亂碼 原因 因為資料庫的編號格式和pl sql developer的編碼格式不統一造成的。二 檢視和修改oracle資料庫字符集 select userenv language from dual 查詢結果 simplified chinese ch...