如何在用ACCESS的数据里对日期的大小进行判断
比如: strSQL = " SELECT * FROM kehu WHERE 入住时间 >= '" & CDate(DTPto) & "'"这样是错误的,可我不知道怎么对其进行判断

解决方案 »

  1.   

    strSQL = " SELECT * FROM kehu WHERE 入住时间 >= #" & CDate(DTPto) & "#"
      

  2.   

    你说同样是微软的东西,为什么在Access和SQL Server中要对时间包围采用不同的符号呢一个用# 一个用'。使得很多人都不适应
      

  3.   

    谢谢你!
    strSQL = " SELECT * FROM kehu WHERE 入住时间 >= #" & CDate(DTPto) & "#"
    这样写是不会出错,但是不知为何找不到任何记录???
    数据库里应该有记录才对的!
      

  4.   

    最好用datediff函数来比较,才能正确判断。
      

  5.   

    strSQL = " SELECT * FROM kehu WHERE DateDiff('d,'入住时间,'" & CDate(DTPto) & "')<=0"
      

  6.   

    不好意思,写错了:
    strSQL = " SELECT * FROM kehu WHERE DateDiff('d',入住时间,'" & CDate(DTPto) & "')<=0"
      

  7.   

    strSQL = " SELECT * FROM kehu WHERE DateDiff('d',入住时间,'" & format(DTPto,"yyyy-MM-dd")) & "')<=0"