【问题标题】:How to UPDATE an Access Date/Time field with the current date如何使用当前日期更新访问日期/时间字段
【发布时间】:2014-02-21 17:40:32
【问题描述】:

我正在使用以下代码将链接 SQL 表中的 datetime 字段更新为当前日期和时间。但是,输入的日期是 1899 年 12 月 29 日。我不明白我在这里缺少什么。有什么想法吗?

CurrentDb.Execute "UPDATE dbo_PAYMENT SET PAYMENT_CC_DATE_PROCESSED=#" & Now & "# AND PAYMENT_CC_EMPLOYEE_ID = 0 WHERE PAYMENT_ID=" & Me.PAYMENT_ID

【问题讨论】:

    标签: sql ms-access sql-update


    【解决方案1】:

    如果您使用 Access SQL 的内置 Now() 函数,则无需在其周围放置井号 (#)。 (他们只需要分隔日期literal,而不是日期函数。)试试

    ... SET PAYMENT_CC_DATE_PROCESSED=Now() ...
    

    或者,如果不需要时间组件,您可以使用

    ... SET PAYMENT_CC_DATE_PROCESSED=Date() ...
    

    另外,如果你想更新多个字段,你需要使用

    ... SET Field1=value1, Field2=value2 ...
    

    不是

    ... SET Field1=value1 AND Field2=value2 ...
    

    【讨论】:

    • 没用。它给了我一个语法错误。我不明白这里可能有什么问题。我在其他地方用过这个功能,没问题。 ://
    • @mntyguy 我刚刚对 SQL Server 2008 R2 中的 datetime 列进行了尝试,它对我来说效果很好。尝试删除表格链接并在 Access 中重新创建它,看看是否有帮助。
    • 我尝试删除链接并重新添加表格无济于事。我还使用该函数(没有哈希)输入了代码,但这也不起作用。也许这些字段损坏了一些东西?
    • @mntyguy 啊哈,我看到了语法错误。如果要更新多个字段,则需要使用SET Field1=value1, Field2=value2,而不是SET Field1=value1 AND Field2=value2
    • 就是这样!再次感谢!
    【解决方案2】:

    就是这样!非常感谢@Gord Thompson!

    @mntyguy 啊哈,我看到语法错误。如果要更新多个字段,则需要使用 SET Field1=value1, Field2=value2,而不是 SET Field1=value1 AND Field2=value2

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-21
      • 2018-01-26
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多