KB4459220 – KORREKTUR: Falsche Ergebnisse treten auf, wenn Sie den Parameter "pollinginterval" von Sekunden in Stunden in sys.sp_cdc_scan in SQL Server

Gilt für
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2017 on Windows (all editions)

Symptome

Angenommen, Sie aktivieren das Feature Change Data Mitschreiben (CDC) für eine Tabelle, um einen Protokollscan in Microsoft SQL Server auszuführen. Der pollinginterval-Parameter wird in der gespeicherten sys.sp_cdc_scan Prozedur von Sekunden in Stunden (h) konvertiert. Wenn der pollinginterval-Parameter jedoch größer als eine Stunde (>3600 s) ist, stellen Sie fest, dass das konvertierte Ergebnis falsch ist.

Hinweis

declare @pollinginterval bigint, @seconds bigint, @minutes bigint, @hours bigint
  set @pollinginterval = 3600
  %60 auswählen @seconds = @pollinginterval
  select @minutes = ((@pollinginterval - @seconds) / 60) % 60
  select @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- Nächster Versuch stattdessen unterhalb der Zeile
--- wählen Sie @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
  wählen Sie @hours, @minutes, aus. @seconds

Lösung

Dieses Problem wurde in den folgenden kumulativen Updates für SQL Server behoben:

Kumulatives Update 12 für SQL Server 2017

Kumulatives Update 3 für SQL Server 2016 SP2

Kumulatives Update 12 für SQL Server 2016 SP1

Kumulatives Update 1 für SQL Server 2014 SP3

Kumulatives Update 14 für SQL Server 2014 SP2

Informationen zu kumulativen Updates für SQL Server:

Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und alle Sicherheitsfixes, die im vorherigen kumulativen Update enthalten waren. Sehen Sie sich die neuesten kumulativen Updates für SQL Server an:

Neuestes kumulative Update für SQL Server 2017

Neuestes kumulatives Update für SQL Server 2016

Neuestes kumulatives Update für SQL Server 2014

Status

Microsoft hat bestätigt, dass dies ein Problem bei den Microsoft-Produkten ist, die im Abschnitt „Gilt für“ aufgeführt sind.

Referenzmaterial

Informieren Sie sich über die Terminologie, die Microsoft zum Beschreiben von Softwareupdates verwendet.