【发布时间】:2019-07-18 04:40:17
【问题描述】:
MS Office 365 专业增强版,Access 2007 - 2016
我最近注意到,我编写的触发器中设置字段命令的定义在我不做的情况下发生了变化。我最近拆分了数据库(前端/后端),但不确定这是否是造成这种情况的原因。这就是发生的事情......
之前:
SetField
Name last_mod_date
Value =Format(Now(),"Short Date")
现在...
SetField
Name last_mod_date
Value =Format(Now()|"Short Date")
(这不是错字,“|”替换了“,”)
如果我只是单击“更改前”(在“表”选项卡下,查看我的触发器),然后单击“保存”,我会弹出一个...
The 'SetField' macro action has an invalid value for the 'Value' argument."
(它突出显示“值”行)在 SetField 块中。
IOW,我没有进行任何更改,但它不再喜欢那里的内容。
我可以理解这一点。 “|”在哪里来自?我没有把它放在那里。无论如何,我将其替换为“,”(常识),单击“保存”并获得相同的弹出窗口。
知道为什么我的“,”被“|”代替会很有趣。但我更愿意学习如何解决这个问题。 Format(Now(),"Short Date") 似乎也不起作用。
有什么想法吗?
【问题讨论】:
-
我的解决办法是使用 VBA。我不使用宏。如果您不想要时间部分,那么为什么要使用 Now(),只需使用:
Value = Date()。 Format() 函数实际上返回一个字符串,而不是真正的日期/时间值。日期/时间实际上存储为日期/时间类型字段中的双数字。
标签: ms-access