【问题标题】:Access sql query between date range with local date notation使用本地日期表示法访问日期范围之间的 sql 查询
【发布时间】:2018-11-13 22:45:34
【问题描述】:

我尝试使用以下查询在 Access 中打开 RecordSet,但每次都出现语法错误。

SELECT  FromDate
        , UntilDate
        , NotificationText
        ,NotificationDetail 
FROM    ChangeNotification 
WHERE   FromDate <= #" & Date & "# AND 
        UntilDate >=#" & Date & "#"   

日期符号在22.11.2018 中,因为它显然是本地化的,我没有找到撤消它的方法。

你知道执行查询的方法吗?

非常感谢

【问题讨论】:

  • 语法错误在哪里?在您的查询或您的 vba 代码中?
  • 只是大声思考 - Date 是保留字,是否有问题,或者您使用 Date 返回当前日期并且只返回当前日期的记录?
  • SQL 中的日期应为美国格式。尝试通过 SQLDate 过程(链接中的第 2 项)传递日期。
  • 请描述 FromDateUntilDate 的数据类型,因为这是不常见的日期表示法。
  • @SalmanA 它说“查询表达式中的日期语法错误 'FromDate =#13.11.2018'”

标签: sql ms-access


【解决方案1】:

如果 Date 是同名的 VBA 过程,那么您可以只使用这个:

SELECT FromDate, UntilDate, NotificationText, NotificationDetail FROM ChangeNotification WHERE FromDate <= Date() AND UntilDate >= Date()

我还假设表中的字段FromDateUntilDate 的数据类型为Date/Time

【讨论】:

  • 就是这样,只是用Sql Date函数代替vba
猜你喜欢
  • 1970-01-01
  • 2014-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-13
  • 2021-11-15
  • 1970-01-01
  • 2016-08-28
相关资源
最近更新 更多