pcstatus.m_strFilter.Format("[user_date]>'%s' AND [user_date]<'%s'",fromtime,totime);

解决方案 »

  1.   

    pcstatus
    是什么啊你写的不全啊
    把代码写出来啊
      

  2.   

    我仅要求你看后面Format内的语句fromtime,和totime属CString
      

  3.   

    语句没错,但是不能搜索到结果
    我把代码帖出来void CMonth::OnSearch() 
    {
    // TODO: Add your control notification handler code here
    UpdateData(true);
    m_ListCtrl.DeleteAllItems();
    CString fromtime,totime;
    if (!pcstatus.IsOpen())
    {
    pcstatus.Open();
    }
    fromtime = m_fromtime.Format("%Y-%m-%d");
    totime = m_totime.Format("%Y-%m-%d");

        
        pcstatus.m_strFilter.Format("[user_date]>'%s' AND [user_date]<'%s'",fromtime,totime);
    AfxMessageBox(fromtime,MB_OK);
    AfxMessageBox(totime,MB_OK);
    if(!pcstatus.IsEOF())
          pcstatus.MoveFirst();
          
    pcstatus.Requery();
    if(pcstatus.IsEOF())

          AfxMessageBox("没有符合条件的记录");
          pcstatus.Close();
          return ;
    }
        else
    {
    int i= 0;
      do
     {  
         CString s;
        m_ListCtrl.InsertItem(i,pcstatus.m_user_date+" "+pcstatus.m_user_time,0);
        s.Format("%.2f",pcstatus.m_user_fee);
            m_ListCtrl.SetItemText(i,1,s);
            pcstatus.MoveNext();
    i++;
     }
     while(!pcstatus.IsEOF());
          pcstatus.Close();
    }
         
        


    }
      

  4.   

    pcstatus
    是什么啊..ADO.还是数据集啊
      

  5.   

    [userdata]字段是什么类型的啊,日期型的吗,你期望日期型跟字符型,VC会帮你转换吗?
      

  6.   

    CString好象不能当作Format的参数,否则会执行非法操作
    pcstatus.m_strFilter.Format("[user_date]>'%s' AND [user_date]<'%s'",fromtime,totime);
    改为
    pcstatus.m_strFilter=pcstatus.m_strFilter'"+fromtime+"' AND [user_date]<'"+totime;
      

  7.   

    [user_date],是日期型的字段吧。日期型字段查询如下
    fromtime = m_fromtime.Format("%Y-%m-%d");
    totime = m_totime.Format("%Y-%m-%d");
    pcstatus.m_strFilter.Format("[user_date]>'%s' AND [user_date]
                                              ^
    <'s'",fromtime,totime);  //标记出修正。
      ^
    pcstatus.m_strFilter.Format("[表名].[user_date]>#%s# AND [表名].[user_date]<#%s#,fromtime,totime);
    注意,你的字段前没有表名,需添加表名。日期型的转换用#.
      

  8.   

    [user_date],不是日期行的字段CString.我的语句没错,关键是我想查询两个日期中间
    的记录,可是效果不佳比方说我要查2003-5的记录,fromtime="2003-5-1";totime="2003-5-30",找到的记录是空的,那位能想想办法?
      

  9.   

    to [user_date],不是日期行的字段CString.
    不会吧,是字符型?那怎么查询一个时间段呢?
    我也正好做到日期查询的问题,用我那个可以。你先试试。
      

  10.   

    [user_date]要是datetime才行,不能为Varchar,郁闷
      

  11.   

    我觉得是比较那里出了问题,我想应该用一个函数来判断两者之间的大小关系,不能用简单的><号来比较
      

  12.   

    pcstatus.m_strFilter.Format("[user_date]>\'%s\' AND [user_date]<\'%s\'",fromtime,totime);
    试一下,我一直这么写