同一个时间值写入Access和SQL Server表A的a字段(类型为DateTime),这时要查询这条数据,SQL语句为'Select * from A where ' + Format('a = %.11f', [时间值]); 查询出来不同的结果,好象SQL Server的时间比Access的时间早1-2天,请高手指教,谢谢!!!

解决方案 »

  1.   

    汗~~~用浮点数来比较日期~~~偶第一次见`~~~偶一般都是用DataTimeToStr(Now) 转为字符串,再比较的  s:='Select * from A where a =' + QuotedStr(FormatDateTime('yyyy-mm-dd hh:mm:ss', Now)) ;
      

  2.   

    为什么不行,日期都会转化为double型,如何才能让Access和SQL Server统一,如何在access中比较到时分秒
    s:='Select * from A where a =' + QuotedStr(FormatDateTime('yyyy-mm-dd hh:mm:ss', Now)) ;这条语句在access中是通不过的
      

  3.   

    我一般在access里面日期用Text型
      

  4.   

    是啊,Access数据库用SQL时怎么表达时间的??
    我刚才试了可以这样:
    SELECT * FROM TABLE1 WHERE MYDATE=#2006-10-31#
    但这样就会出错:
    SELECT * FROM TABLE1 WHERE MYDATE=#2006-10-31 10:20:30#
      

  5.   

    搞了半天,应该这样:
    Select * from A where a = cdate([时间值])