- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
mysql錯誤:Warning: #1366 Incorrect string value:?誤主要是因為編碼問題了,如你gb2312的編碼中如果有繁體字就會提示這類錯誤了,所以導致這問題是編碼范圍問題.
我用mysql記錄syslog-ng的日志信息,分解后把日志插入MYSQL,INSERT語句如下:
INSERT INTO logs(host, facility, priority, level, tag, datetime, program, msg)
VALUES ( 'phy', 'daemon', 'notice', 'notice', '1d', '2008-07-30 12:24:12','smbd', 'smbd[45997]: xxxx opened file Public/pub/綠光森?DVD13.rmvb read=Yes write=No (numopen=14)' )
在插入過程中出現以下warning:Warning (Code 1366): Incorrect string value: 'xC2xCCxB9xE2xC9xAD...' for column 'msg' at row 1 //phpfensi.com
查看插入后數據表,msg 字段中只有中文字符“綠光森林”前的部分插入,而其后內容被截斷了,插入字段落msg的內容如下:
smbd[45997]: xxxx opened file Public/pub/
這其實編碼問題,偶遇到的同事是吧編碼設置GB2312導致的,當涉及到一些特殊字符的時候,就會出現截斷的時候,就會報錯,轉變為“ ? ”進行顯示.
mysql錯誤:Warning: #1366 Incorrect string value:解決方法,很簡單,將原來的編碼gb2312改為:gbk編碼,或者改為utf8編碼.
附上:GB2312和GBK編碼區別.
GB2312是中國規定的漢字編碼,也可以說是簡體中文的字符集編碼;GBK 是 GB2312的擴展,除了兼容GB2312外,它還能顯示繁體中文,還有日文的假名.
經驗之談:建時選擇utf8字符集或者再把mysql數據庫表或數據庫字段或數據集修改成uft8即可解決了.
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP