asp.net 查询access数据库模糊查询

首先代码如下:

 OleDbConnection con = database.createDB(); //调用用户自定义的DB类的createDB()的方法
con.Open(); //打开数据库连接
OleDbCommand cmd = new OleDbCommand();//声明一个OleDbCommand的 cmd对象,并将其实例化
OleDbDataAdapter sda = new OleDbDataAdapter("select * from p_person where pxm like '*建筑*';", con);
DataSet ds = new DataSet(); //声明一个DataSet的ds对象,并将其实例化
sda.Fill(ds, "tb_zhuhu");
this.GridView1.DataSource = null;
this.GridView1.DataBind();
this.GridView1.DataSource = ds;
this.GridView1.DataBind();//将数据绑定到GridView控件中
con.Close();

图片说明
查询的结果一直为空,测试之后上面框选部分sql语句的问题,不知道为什么会这样,模糊查询就会出现问题,查询结果为空,求各位大神解答。

7个回答

中文字符串编码可能有问题,导致查询时被解码成其它文字了。

直接在access里查询试试,如果查询不出,就是数据的问题了

模糊查询应该用%,不是*

OleDbDataAdapter sda = new OleDbDataAdapter("select * from p_person where pxm like '%建筑%‘", con);
模糊查询为 like %字段% ,以及将“里面的;去掉

access是ado,通配符用%,oledb的通配符是*

pxm like '%建筑%'

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问