- 工信部备案号 滇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