本来在Access数据库中进行模糊查询,*相当于SQL Server中的%,但是如果真的这么写比如:
sql = select * from table where filed like '*value*'
然后
OleDbDataAdapter da = new OleDbDataAdapter(sql,conn);
da.Fill(ds,"tablename");
这样是查询不到结果的,把*号换成%即可,这可能是OleDbDataAdapter 类对模糊查询的字符作了替换。
这个奇怪的问题害我调试了很长时间,特写出来希望以后大家遇到同样的问题少走弯路
sql = select * from table where filed like '*value*'
然后
OleDbDataAdapter da = new OleDbDataAdapter(sql,conn);
da.Fill(ds,"tablename");
这样是查询不到结果的,把*号换成%即可,这可能是OleDbDataAdapter 类对模糊查询的字符作了替换。
这个奇怪的问题害我调试了很长时间,特写出来希望以后大家遇到同样的问题少走弯路