在上传文件到指定的文件的时候,我指定了文件的命名规则,是学号+作业名,现在我要按用模糊查询查一个班的作业记录,
我写了模糊查询语句,但是没作用,取不出数据库中的记录,希望能得到高手的帮助。
这是我写的模糊查询语句,string strSql = "SELECT * FROM TaskSubmit WHERE taskPath like 'F:\\task\\ "+Class_id+"%+ "+taskName+"%'";没作用,也没报错。
数据表为 TaskSubmit(id 主键,stu_id学生学号,taskPath 上传作业后点的存放路径,submitTime上传时间,grade成绩,comment评语);
其中数据库中有两条记录为 
(1,10200101,F:\task\102011+第一次作文.docx,2010-5-10 21:01:43,80,继续努力)
(2,10201102,F:\task\10201102+第一次作文.docx,2010-5-12 10:59:23,0,)
.我使用string strSql = "SELECT * FROM TaskSubmit WHERE taskPath like 'F:\\task\\102011%+第一次实验报告%'";就可以查到这两条记录,请大家帮忙!

解决方案 »

  1.   

    string strSql = "SELECT * FROM TaskSubmit WHERE taskPath like 'F:\\task\\ "&Class_id&"%+ "&taskName&"%'";会不会是这样呢
      

  2.   

    string strSql = "SELECT * FROM TaskSubmit WHERE taskPath like 'F:\task\"+Class_id+"%+"+taskName+"%'";这句就好了
      

  3.   

    select * from 
    (
    select 'F:\task\102011+第一次作文.docx' as taskPath union all
    select 'F:\task\10201102+第一次作文.docx'
    ) t where taskPath like 'F:\task\1020110%+第一次%'
    /*
    taskPath                         
    -------------------------------- 
    F:\task\10201102+第一次作文.docx(所影响的行数为 1 行)
      

  4.   

    [sqlcode]select * from 
    (
    select 'F:\task\102011+第一次作文.docx' as taskPath union all
    select 'F:\task\10201102+第一次作文.docx'
    ) t where taskPath like 'F:\task\1020110%+第一次%'
    /*
    taskPath                         
    -------------------------------- 
    F:\task\10201102+第一次作文.docx(所影响的行数为 1 行)
    [/sqlcode]