2天未处理问题,待达人

wangxuelid 2012-03-13 10:19:47


CREATE TABLE `tb_qz_source_daoru` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`source` varchar(200) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=gb2312


show full columns from tb_qz_source_daoru;

Field Type Collation Null Key Default Extra Privileges Comment
id int(11) NO PRI auto_increment select,insert,update,references ""
create_time timestamp YES "" CURRENT_TIMESTAMP "" select,insert,update,references ""
source varchar(200) gb2312_chinese_ci YES "" "" select,insert,update,references ""


show variables like 'char%';


Variable_name Value
character_set_client utf8
character_set_connection utf8
character_set_database gb2312
character_set_filesystem binary
character_set_results utf8
character_set_server gb2312
character_set_system utf8
character_sets_dir D:\wamp\mysql5.1\share\charsets\


insert into tb_qz_source_daoru(source) select '查看英才简··历库简历|' ;
Incorrect string value: '\xC2\xB7\xC2\xB7\xE5\x8E...' for column 'source' at row 1
----如果屏蔽中文特殊字符:键盘左上角ESC挨着的中文键。

...全文
152 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangxuelid 2012-03-13
  • 打赏
  • 举报
回复
现在没有使用任何客户端,使用sql manager 2010 for mysql工具
直接调用:CALL `proc_qz_daoru_info`('查看简历···| 智聘护');
报错。。。谢谢各位
ACMAIN_CHM 2012-03-13
  • 打赏
  • 举报
回复
你先执行一下 set names 'gbk'; 然后再执行你的语句。

触发器中则需要单独指定一下字符集参考下贴中的操作。

http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
MySQL 中文显示乱码
rucypli 2012-03-13
  • 打赏
  • 举报
回复
你用的什么客户端工具 设置客户端工具的会话字符集试试
wangxuelid 2012-03-13
  • 打赏
  • 举报
回复

使用工具:sql manager 2010 for mysql
修改表;
Field Type Collation Null Key Default Extra Privileges Comment
id int(11) NO PRI auto_increment select,insert,update,references ""
create_time timestamp YES "" CURRENT_TIMESTAMP "" select,insert,update,references ""
source varchar(200) utf8_general_ci YES "" "" select,insert,update,references ""
source varchar(200) utf8_general_ci YES
执行:
insert into tb_qz_source_daoru(source) select '查看英才简历库简历····|' ;不再报错
但是:
CALL `proc_qz_daoru_info`('查看简历···| 智聘护');

CREATE DEFINER = 'root'@'localhost' PROCEDURE `proc_qz_daoru_info`(
IN string_daoru VARCHAR(5000)
)
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
DECLARE d_source varchar(5000) DEFAULT '';
set d_source=string_daoru;
set d_source=SUBSTRING_INDEX(d_source,'|',1);
insert into tb_qz_source_daoru(source) select d_source ;
END;
------报错:Incorrect string value: '\xC2\xB7\xC2\xB7\xC2\xB7...' for column 'string_daoru' at row 1
WWWWA 2012-03-13
  • 打赏
  • 举报
回复
你的default-character-set=utf8要在
[mysql]下才行
wangxuelid 2012-03-13
  • 打赏
  • 举报
回复

Variable_name Value
character_set_client utf8
character_set_connection utf8
character_set_database gb2312
character_set_filesystem binary
character_set_results utf8
character_set_server gb2312
character_set_system utf8
character_sets_dir D:\wamp\mysql5.1\share\charsets\


insert into tb_qz_source_daoru(source) select '查看英才简历库简历····|' ;
Incorrect string value: '\xC2\xB7\xC2\xB7\xC2\xB7...' for column 'source' at row 1
---貌似修改这个不起作用
WWWWA 2012-03-13
  • 打赏
  • 举报
回复
[mysql]

default-character-set=utf8

重新启动服务器
show variables like 'char%';
wangxuelid 2012-03-13
  • 打赏
  • 举报
回复
mysql -my.ini :已经设置default-character-set=gb2312 并且从新启动服务器。
WWWWA 2012-03-13
  • 打赏
  • 举报
回复
试试
set names gb2312
or
set names utf8
wangxuelid 2012-03-13
  • 打赏
  • 举报
回复

---结贴
---在万般无奈的情况下,只能采用其他方式屏蔽客户输入该字符,2012年3月13日17:31:33,再次感谢大家。

56,803

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧