Symptomen
Als u de functie voor het vastleggen van gegevens van gegevens in een tabel wilt wijzigen, moet u de CDC-functie voor logboekcontrole uitvoeren in Microsoft SQL Server. De pollinginterval -parameter wordt van seconden (s) geconverteerd naar uren (h) in de sys.sp_cdc_scan opgeslagen procedure. Wanneer de pollinginterval -parameter echter groter is dan een uur (>3600 s), ziet u dat het geconverteerde resultaat niet klopt.
Declareer @pollinginterval bigint, @seconds bigint, @minutes bigint, @hours bigint set @pollinginterval = 3600 Selecteer @seconds = @pollinginterval %60 Selecteer @minutes = ((@pollinginterval-@seconds)/60) %60 Selecteer @hours = (@pollinginterval-(@minutes * 60)-@seconds)/60 ---Volgende poging onder regel ---Select @hours = (@pollinginterval-(@minutes * 60)-@seconds)/60/60 Selecteer @hours, @minutes @seconds
Oplossing
Dit probleem is opgelost in de volgende cumulatieve updates voor SQL Server:
Cumulatieve update 12 voor SQL Server 2017
Cumulatieve update 3 voor SQL Server 2016 SP2
Cumulatieve update 12 voor SQL Server 2016 SP1
Over cumulatieve updates voor SQL Server:
Elke nieuwe cumulatieve update voor SQL Server bevat alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige cumulatieve update. Bekijk de nieuwste cumulatieve updates voor SQL Server:
Nieuwste cumulatieve update voor SQL Server 2017
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.
Verwijzingen
Lees meer over de terminologiedie door Microsoft wordt gebruikt om software-updates te beschrijven.