我在Access里查询一日期型字段
With AdoQuery1 do
begin
 Close;
 Sql.Clear;
 Sql.Add('Select * From DataLog Where Date1 and '''+s1+'''and '''+s2+''' ');
 Open;
end;
当执行到'Open'时报以下错误:“Data type mismatch in criteria expression”
谢谢你的回答!

解决方案 »

  1.   

    Sql错了!Select * From DataLog Where Date1 and '条件1'and '条件2'这句SQL本身就不对!
      

  2.   

    ('Select * From DataLog Where Date1 and '''+s1+'''and '''+s2+''' '); 改为:('Selcet * From DataLog Where Date1 between '+#39+sl+#39+' and '+#39+s2+#39) ;
      

  3.   

    对不起打错了,应该是这样的:
    我在Access里查询一日期型字段
    With AdoQuery1 do
    begin
     Close;
     Sql.Clear;
     Sql.Add('Select * From DataLog Where Date1 between '''+s1+'''and '''+s2+''' ');
     Open;
    end;
    当执行到'Open'时报以下错误:“Data type mismatch in criteria expression”
    谢谢你的回答!
      

  4.   

    我认为你错误的原因可能是s1,s2不是日期型,或者格式不同,可是这样改:以DateTimePicker为例吧:
    formatdatetime('yyyy-mm-dd',DTP_begin.DateTime)来替换s1,其他的你灵活应用吧!
      

  5.   

    Programer最主要的不是program,而是Program Soul!
    一定要多想,多思考!