Mysql寫入記錄出現 Incorrect string value: '\xB4\xE7\xB1\xCA\xBC\xC7‘錯誤?php
解決方法一:sql
在建立數據表時就須要注意將中文字段屬性設置爲utf8編碼形式數據庫
CREATE TABLE tdb_goods_types(
type_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
type_name VARCHAR(20) character set utf8 collate utf8_unicode_ci not null,
parent_id SMALLINT UNSIGNED NOT NULL DEFAULT 0
); 編碼
解決方法二:spa
建立時不須要指定,以後進行修改code
第一步:修改MySQL該字段的字符集與整理規則便可。假設數據表爲phplamp, SQL語句的字符集爲utf8,出錯的字段爲address: ci
MySQL 1366 錯誤解決辦法 unicode
1. #檢查數據表全部字段的狀態 get
2. ->show full columns from phplamp; string
3. #發現address字段的Collation項非utf8,修改它!
4. ->alter table phplamp change address address varchar(100) character set utf8 collate utf8_unicode_ci not null;
修改完字段的字符集後能夠再使用show full columns from table_name命令檢查一下,以確保萬無一失。假如您的SQL字符集爲GBK或是GB2312或是其它的話,只須要將數據表字段的字符集更改成其相應的編碼便可。
第二步:將客戶端設爲以GBK編碼來顯示數據,
SET NAMES GBK;
這只是但不影響數據存儲,數據庫仍是原來的UTF8編碼。