首页 > 解决方案 > 将 MS Access DATE() 转换为 Getdate()

问题描述

我在 MS Access to SQL Server 中有一个 ODBC 链接表。在 MS Access 的查询中,我在字段上有以下表达式:

DATE() - [DATE] (a field). 

我需要将 MS Access 函数DATE(),即当前日期更改为 SQL Server GETDATE()。如何在 MS Access 的表达式生成器中进行转换?

标签: sql-serverms-accessgetdate

解决方案


您不能真正使用 GetDate() t-sql 服务器端值。

但是,您可以做的是代替使用链接表到 sql server 表吗?

您可以创建一个视图并拥有这个

SELECT *, GETDATE() as MyServerDate FROM tblInvoices.

现在,在您的客户端查询中,您有一个名为 MyServerDate 的列。

因此你可以这样做:

SELECT *, (DATE() - [MyServerDate] as MydueDate from MyView

当然,另一种方法是使用传递查询,但它们是只读的。因此,如果 sql 仅用于报告或某些屏幕显示,那么您可以考虑使用 100% 服务器端查询。因此,您在 Access 中创建查询,但将其设置为 PT 查询。因此,您构建的 Access 查询中的原始 SQL 语法必须是 t-sql sql,而不是 access sql。


推荐阅读