【问题标题】:How to find when a row is inserted or updated in SQL Server table如何查找在 SQL Server 表中插入或更新行的时间
【发布时间】:2012-01-31 16:46:45
【问题描述】:

我在 SQL Server 中有一个表,但是当值插入表中时没有显示列。而且我也不想创建一个。

有没有一种方法可以找到某人在 SQL Server 2008 表中插入行或更新时的时间和日期?

【问题讨论】:

  • 不,没有办法实现这一点 - 如果您需要该日期/时间信息,您需要添加一个列来保存该信息,并在发生插入和/或更新时在触发器中更新它

标签: sql sql-server sql-server-2008 row


【解决方案1】:

如果您不想修改现有表,唯一的方法是创建另一个表来记录活动。然后您可以在源表上使用ON INSERT / ON UPDATE 触发器,并将插入和更新的时间和日期记录到日志表中。

【讨论】:

    【解决方案2】:

    如果您不想更改现有架构,请创建审计表并在源表上创建触发器以更新审计表。

    【讨论】:

      【解决方案3】:

      您可以在 sql server 2005/2008 中使用 On Insert 和 On Update 触发器,并且您的必填字段在 insertedupdated 表中可用,但如果您以后需要使用此信息,则需要添加一个新表和记录您的信息!

      我自己做这样的事情总是在我的表中添加 2 列

      LastActivityBy 与用户表的关系

      LastActivityOn 日期时间

      所以您不需要使用任何其他表。

      【讨论】:

        猜你喜欢
        • 2012-06-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-29
        • 2013-06-11
        • 1970-01-01
        • 2013-06-15
        相关资源
        最近更新 更多