正如标题所暗示的那样,我想知道这是否可能,或者您是否遇到过同一 UPDATE 语句中不同 GETDATE() 结果的问题。
我有一个存储过程,它更新包含两个 DateTime 列的记录,其中还有一个 CASE 语句,一般更新如下:
UPDATE A
SET Status = dbo.func('P')
,Time1 = GETDATE()
,Time2 = ISNULL(A.Time2, GETDATE())
,ModifiedOn = GETDATE()
FROM dbo.Table A
WHERE A.ID = @ID
AND A.RowID = @RowID;
Run Code Online (Sandbox Code Playgroud)
我看到 Time2 值稍晚一些,但总是以 3 或 4 的增量增加。这似乎是由于 SQL Server 通过设计将日期时间四舍五入到最接近的 0.000、0.003、0.007 Stack Post Here。
我认为这种差异是由两个 GETDATE() 调用之间的轻微延迟引起的,并且延迟通常会导致一个“滴答声”,因为我只看到 Time2 - Time1 = {-.003, -.004 之间的差异}。
上述查询是否有可能返回两个不同的 GETDATE() 结果?
我正在使用许多严重缺乏备份的不同服务器。
我想使用简单模式实施备份计划,每周进行一次完整备份,然后在一周内进行一系列差异备份。
通过覆盖同一文件来执行完整备份和差异备份是否可行?我再次尝试限制使用的存储量,根据我的理解,如果我在某个时间间隔进行差异备份,则数据是累积的,因此只需要最新的 .dif 文件和完整的 .bak 文件。因此,每次执行差异备份时,它都会覆盖之前的备份。这是安全的还是我误解了一些重要的东西?