比较Access / SQL查询的WHERE子句中的时间戳

时间:2018-03-02 18:51:52

标签: sql-server ms-access sql-timestamp

我在连接到SQL Server后端的Access前端工作。

在我们的一个表中,SQL Server上的数据类型是时间戳。我想写一个WHERE语句,限制返回到过去30秒内创建的记录的数据。我尝试了以下

WHERE myTime > DATEADD(s, -30, SYSDATETIME())

但是得到以下错误:

Operand type clash: datetime2 is incompatible with timestamp

我一直在研究铸造和转换,但我到底在哪里或如何做到这一点并不清楚。任何见解?并且正在使用SYSDATETIME()做正确的事情吗?

1 个答案:

答案 0 :(得分:1)

您应该为datetime列使用myTime类型。我认为你误解了timestamp datatype的目的。

参考文章:

  

时间戳数据类型只是一个递增的数字而不是   保留日期或时间。要记录日期或时间,请使用日期时间   数据类型。