access的模糊查询和通配符问题.

2024-11-24 23:48:52
推荐回答(2个)
回答1:

ACCESS模糊查询出现的问题,开发中需要注意!
在SQL Server中模糊查询通常是这样的Select * from articleTable where authorName like '%jacky%'
但是在Access中用这条语句执行的时候竟然发现查不出结果,怎么可能呢?

后来查了下资料,发现问题如下:
要进行模糊查找,则必须使用通配符,ACCESS库的通配符和SQL SERVER的通配符不一样。

ACCESS库的通配符为:
* 与任何个数的字符匹配。
? 与任何单个字母的字符匹配
在SQL Server中的通配符为:
% 与任何个数的字符匹配
- 与单个字符匹配

正确写法应是:

在C#里写应写成 Select * From Table Where Name Like '%jacky%'

Select * From Table Where Name Like '_jacky_'

Access内测试语句应写成 : Select * From Table Where Name Like '*jacky*'

Select * From Table Where Name Like '?jacky?'

参考这 ,写的很详细
http://zhidao.baidu.com/question/20323099.html?fr=qrl3

回答2:

%测试% 两边匹配任何字符,如果写成%测试就可以找到"这是测试"