【问题标题】:database timestamp数据库时间戳
【发布时间】:2012-12-16 14:29:36
【问题描述】:

时间戳的定义是什么?
时间戳仅用于交易? (无论事务中有什么动作。时间戳始终是事务发生的时间。)
或者时间戳是针对交易的每个操作的? (每个动作都有一个时间戳。)

例如,当第一个 R1(X) 发生时,它有一个时间戳 TS。但是对于第二个 R1(X),时间戳是否与 TS 相同?还是时间戳已更改?

再举一个例子,如果我有 R1(X)W2(X)W1(X),它是可序列化的视图吗?它是可序列化的冲突吗?

【问题讨论】:

    标签: database timestamp


    【解决方案1】:

    这可能取决于您使用的数据库。

    对于 SQL Server,时间戳是通过使用返回当前数据库系统时间戳的 GetDate() 检索的。

    因此,如果您使用 GetDate 插入一行来输入时间戳,然后 2 秒后在同一事务中插入另一行再次调用 GetDate,则第二次调用将在 2 秒后返回时间。

    【讨论】:

      猜你喜欢
      • 2012-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-06
      • 2018-10-09
      • 2012-01-19
      • 2012-05-23
      相关资源
      最近更新 更多