vc6 access数据库 中文模糊查询错误

songtzu 2014-02-20 09:12:01
数据库中,查询操作遇到出现中文的地方就开始有bug。
相关代码在这里可以下载:
"select * from Phone where Email  LIKE '%alibaba%' "

"select * from Phone where Email  LIKE '%好的%' "

数据库连接代码:
m_Conn.SetConnectionString("Provider=Microsoft.Jet.OLEDB.4.0; Data Source= Test.mdb;Jet OLEDB:DataBase password=;");

当数据库内容是:
abc@alibaba.com
abc@alibaba.com
abc@alibaba.com
abc@alibaba.com
abc@alibaba.com

--------------
时可以正确查询。
当内容如下时:
啊啊啊啊@aaa.com
啊啊啊啊@aaa.com
啊啊啊啊@aaa.com
abc@alibaba.com
abc@alibaba.com

--------------
查询就会失败。
...全文
605 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
许文君 2014-02-21
  • 打赏
  • 举报
回复
引用 6 楼 songtzu 的回复:
[quote=引用 5 楼 xuddk727 的回复:] [quote=引用 4 楼 songtzu 的回复:] [quote=引用 3 楼 xuddk727 的回复:] 你是什么数据库,可以设置编码的
兄台,上面不是写了么。vc6操作access数据库。代码也有提供。[/quote] 抱歉没注意啊,你数据库里的数据是手动添加的还是代码添加的?vc6默认是单字节的,如果表默认是unicode我猜可能就有问题。[/quote] 用代码插入的,Cstring对象插入,应该是unicode编码。access数据库的表的编码未做处理【所以我也不知道这是什么编码的】。 如何处理?[/quote] 如果是同一exe内应该是同一种编码啊
songtzu 2014-02-21
  • 打赏
  • 举报
回复
引用 5 楼 xuddk727 的回复:
[quote=引用 4 楼 songtzu 的回复:] [quote=引用 3 楼 xuddk727 的回复:] 你是什么数据库,可以设置编码的
兄台,上面不是写了么。vc6操作access数据库。代码也有提供。[/quote] 抱歉没注意啊,你数据库里的数据是手动添加的还是代码添加的?vc6默认是单字节的,如果表默认是unicode我猜可能就有问题。[/quote] 用代码插入的,Cstring对象插入,应该是unicode编码。access数据库的表的编码未做处理【所以我也不知道这是什么编码的】。 如何处理?
许文君 2014-02-21
  • 打赏
  • 举报
回复
引用 4 楼 songtzu 的回复:
[quote=引用 3 楼 xuddk727 的回复:] 你是什么数据库,可以设置编码的
兄台,上面不是写了么。vc6操作access数据库。代码也有提供。[/quote] 抱歉没注意啊,你数据库里的数据是手动添加的还是代码添加的?vc6默认是单字节的,如果表默认是unicode我猜可能就有问题。
songtzu 2014-02-21
  • 打赏
  • 举报
回复
引用 3 楼 xuddk727 的回复:
你是什么数据库,可以设置编码的
兄台,上面不是写了么。vc6操作access数据库。代码也有提供。
许文君 2014-02-20
  • 打赏
  • 举报
回复
你是什么数据库,可以设置编码的
songtzu 2014-02-20
  • 打赏
  • 举报
回复
引用 1 楼 xuddk727 的回复:
数据库的编码问题?你的是什么编码?
不是很明白,我没有处理编码。vc++插入的内容。没有处理过编码,所以估计是unicode。
许文君 2014-02-20
  • 打赏
  • 举报
回复
数据库的编码问题?你的是什么编码?

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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