在做一个图书馆管理理系统,由于是菜鸟,遇到许多问题,有这么一个:
本人在用SqlCommand时,语句为
select *
from Book
where Title like '%' + @title + '%'
实现模糊查询,不过,始终不成供;如果把参数换为字符到是可以如:
where Title like '%' + 'C#' + '%'
一筹莫展,请大家帮忙!先谢过里!!!!!!

解决方案 »

  1.   

    不报错已经很给面子了!String title;
    title="C#"select *
    from Book
    where Title like '%' + title + '%'
      

  2.   

    string title="select * from Book where Title like '%" + title + "%'";
      

  3.   

    如果你这中情况是存储过程,应该要构造sql,set strSql=。
    excute strSql
      

  4.   

    多谢大家指点,但我还是不太明白,我用地datagrid, 用的是数据绑定,让后vs.net的IDE中用sqldataAdapter, 查询语句是写在这当中的,由于才刚上手,所以我不是很明白,能否说得再详细一点,多谢!!!
      

  5.   

    @title = '''%C#%'''    //引号和%在外部处理 select *
    from Book
    where Title like @title
      

  6.   

    语句应该没问题,可能你没付值给Title
      

  7.   

    用了这种方法:@title = "'%C#%'"
    好像没也不行,我是这样做地
    在qldataadapter的selectcommand的CommanmdText项中测试,
    其中地语句是:
    SELECT Book_ID, ISBN, Search_Num, Title, Author, Publisher, Pub_Place, Pub_Year, Price, 
          Pages, Book_Cat, Abstract, Bor_Num, State, Owner, Department
    FROM Boo
    WHERE (Title LIKE @title)     运行时@title = "'%C#%'" 或 '%C#%' 或 %C#%都不行,
    但改为WHERE (Title LIKE '%C#%')就好了。
    或给出全称 @title = C#数据库入门经典就好了,看来还是%的问题
    郁闷啊!