mysql查询有换行符的数据_MySQL使用Like查询换行符的问题

最近遇到一个MySQL的问题,问题如下:

CREATE TABLE `authentication` (

`ID` bigint(20) NOT NULL AUTO_INCREMENT,

`DEVUSERNAME` varchar(255) COLLATE utf8_bin DEFAULT NULL,

`DEVPASSWORD` varchar(255) COLLATE utf8_bin DEFAULT NULL,

`DEVROLENAME` varchar(255) COLLATE utf8_bin DEFAULT NULL,

PRIMARY KEY (`ID`),

KEY `Idx_DEVROLENAME` (`DEVROLENAME`)

) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COLLATE=utf8_bin ;

insert into authentication (ID,DEVUSERNAME,DEVPASSWORD,DEVROLENAME) values(8,'1.0','1.0','1.0');

update authentication set DEVROLENAME='1.0TR069\r\n' where id =8;

commit;

使用如下语句

select * from authentication where DEVROLENAME like "1.0TR069%";

不能查询出这条记录。

如果删除索引Idx_DEVROLENAME, 再查询则可以查出来。

不知道什么原因,望指点。

测试版本 MySQL 5.1.24 linux版

问题补充:

qqpedily 写道

USE pubs

GO

SELECT phone

FROM authors

WHERE phone NOT LIKE '415%'

ORDER BY au_lname

GO

注意 “” 和 ‘’的区别,在看看这篇文章http://blog.csdn.net/wei0527/archive/2009/04/17/4086131.aspx

在MySQL中 "" 和 ''是一样的,而且我换成''也同样查不出来。

我是想查出包含'\r\n'的记录,如果删除索引,是可以查出的,但是有索引则不行,求教为什么?

问题补充:谢谢 Ihavegotyou

虽然从bug描述上说和我的情况不相符,但已经很类似了。(只是我用的版本是5.1.24应该已经fix这个bug了)

暂时先按MySQL的bug处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值