我界面上有个Datelist,绑定在AccessDataSource上面在我配置数据源完成后:AccessDataSource.SelectCommand="select id,name from table1 where ([name] = ?)";
<SelectParameters>
    <asp:ControlParameter ControlID="label1" Name="name" PropertyName="Text" Type="String" />
</SelectParameters>
这是打开页面之后默认显示的列表数据。我做了一个查询,让符合的数据显示出来
然后我就在后台:AccessDataSource.SelectCommand="select id,name from table1 where ([name] like %?%)";结果就报错了:语法错误 在查询表达式 '([name] like %?%)' 中。 
不知道有没有大哥美女做过类似功能的?
我不知道错在哪儿了,望指点。谢谢分就这么多了。原谅小弟。万分感激。

解决方案 »

  1.   

    try
     ([name] like '%'+?+'%'
      

  2.   

    select * from w8m_user where ([nickname] like '%?%')
    这个是正确的,分拿来哦
      

  3.   


    我把你的ID”takako_mu“给输入进去,点查询。我第一条数据仍然显示出来了。。这
      

  4.   


    我把"frankonlyfine"输入进去,显示的还是第一条数据你给的SQL语句肯定没问题,但是哥哥你看清题目,问题是出在我绑定的那个数据源上面的
      

  5.   

    select id,name from table1 where ([name] like '%takako_mu%')
      

  6.   

    肯定只有一条啊,你上面不是设定了吗
    name = ?
    模糊查询就无效了
      

  7.   

    select id,name from table1 where ([name] like %?%)你的name是varchar类型的吧,所以应该加上''. 
    select id,name from table1 where ([name] like '%?%')
      

  8.   


    不是。你没听懂我的意思。有两种效果。name=? 的这一种是打开页面后默认的。第二种模糊查询的,是我从其他页面传值过来的。我在后台重新给AccessDataSource.SelectCommand赋值,第一种默认的就无效了
      

  9.   

    WHERE     (Enterprise.visible = 'on') and Eaddress like '%'+@searchstr+'%'
      

  10.   

    select id,name  from No_Qualified where name  like '%?%'