【问题标题】:Updating table with static Information使用静态信息更新表
【发布时间】:2020-07-14 16:24:17
【问题描述】:

在 Access 中,我有一个可通过表单视图编辑的表单,但在用户单击保存按钮后,我想要一个时间戳来使用用户 ID 和日期更新记录。

我尝试了以下方法,但似乎无法正常工作。 我收到:

运行时错误 3622 -
访问具有 IDENTITY 列的 SQL Server 表时,必须将 dbSeeChanges 选项与 OpenRecordset 一起使用。

Private Sub TicketDetBUT_Save_Click()
    CurrentDb.Execute "UPDATE MATLog " & _
    "  SET [Ticket Date] = Date() " & _
    ", [Ticket User] = GetUserName() " & _
    " Where [Load ID] = Me.TicketsDETBOX_LoadID"
End Sub

同样,在他们单击保存后,所有更新的信息都应保存到特定记录,并更新附加的两个字段。

【问题讨论】:

  • 你到底为什么要保存数据??? Access 会在您离开记录后立即保存它。
  • 因为它作为导航控件存在。它更像是一个退出按钮。我为其构建此解决方案的大多数用户从未使用过访问权限,因此他们不会更好地了解。我不希望我的用户知道它会在记录上加上他们的时间和时间信息。我希望他们在表单上进行他们需要的任何更改,然后当点击“保存并退出按钮”时,它将他们的用户 ID 和今天的日期添加到表单上隐藏但在桌子上的两列。

标签: sql vba ms-access


【解决方案1】:

here所示,您可以将选项设置为Currentdb.Execute
你的代码应该是

CurrentDb.Execute "UPDATE MATLog " & _
"  SET [Ticket Date] = Date() " & _
", [Ticket User] = GetUserName() " & _
" Where [Load ID] = Me.TicketsDETBOX_LoadID", dbSeeChanges

现在坦率地说,我做了很多 Access + SQL Server 的开发,我从来没有使用过那些不连贯的表单。我的应用程序与安装在另一个国家/地区的客户端一起使用,通过 VPN 连接。只需将您的表单绑定到链接表,然后让 Access 完成它的工作。

【讨论】:

    猜你喜欢
    • 2021-10-19
    • 2014-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-28
    • 1970-01-01
    • 2012-06-06
    相关资源
    最近更新 更多