如何将字符串转换为日期时间MS Access

时间:2013-06-14 09:50:28

标签: sql ms-access type-conversion

我正在使用Ms Access,以下是我的查询

select * from travelapproval 
where CDate(datefrom1) <=  Date() 
and CDate(dateto1) >= Date()

我使用的是datefrom1,而dateto1是文本类型。它显示"Data type mismatch in criteria expression."

即使我尝试使用CDate功能,如何将它们转换为日期时间。

enter image description here

3 个答案:

答案 0 :(得分:5)

假设您无法将字段类型更改为日期。

检查datefrom1和dateto1字段中是否有非日期值。

如果您这样做,请使用以下内容来解决它:

CDate(IIf(IsDate([StringDate]),[StringDate],0))

答案 1 :(得分:2)

你可以用这个

  SELECT * from travelapproval
  WHERE Format(datefrom1, "mm/dd/yyyy hh:nn:ss am/pm") <=  Date() 
  AND Format(dateto1, "mm/dd/yyyy hh:nn:ss am/pm") >=  Date() 

您可以找到更多示例和解释here

答案 2 :(得分:0)

假设datetime字符串来自SQL Server,具有毫秒,

Format(Replace([SQLSERVER_DATESTRING],".000",""),"mm/dd/yyyy hh:nn:ss am/pm")