KB4459220 – RJEŠENJE: kada parametar "pollinginterval" pretvorite iz sekundi u sate u sys.sp_cdc_scan u SQL Server, dolazi do netočnih rezultata

Primjenjuje se na
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)

Simptomi

Pretpostavimo da ste omogućili značajku Change Data Capture (CDC) na tablici da biste pokrenuli pregled zapisnika u sustavu Microsoft SQL Server. Parametar pollinginterval pretvara se iz sekundi (s) u sate (h) u pohranjenoj proceduri sys.sp_cdc_scan . Međutim, kada je parametar pollinginterval dulji od jednog sata (>3600 s), primijetit ćete da pretvoreni rezultat nije točan.

Napomena

Deklariranje @pollinginterval bigint, @seconds bigint, @minutes bigint, @hours bigint
  set @pollinginterval = 3600
  Odabir @seconds = @pollinginterval % 60
  SELECT @minutes = ((@pollinginterval - @seconds) / 60) % 60
  Odabir @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- Sljedeći pokušaj ispod retka
--- select @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
  Odaberite @hours, @minutes, @seconds

Rješenje

Taj je problem riješen u sljedećim kumulativnim ažuriranjima za SQL Server:

Kumulativno ažuriranje 12 za SQL Server 2017

Kumulativno ažuriranje 3 za SQL Server 2016 SP2

Kumulativno ažuriranje 12 za SQL Server 2016 SP1

Kumulativno ažuriranje 1 za SQL Server 2014 SP3

Kumulativno ažuriranje 14 za SQL Server 2014 SP2

O kumulativnim ažuriranjima za SQL Server:

Svako novo kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sigurnosne popravke koji su obuhvaćeni prethodnim kumulativnim ažuriranjem. Pogledajte najnovija kumulativna ažuriranja za SQL Server:

Najnovije kumulativno ažuriranje za SQL Server 2017

Najnovije kumulativno ažuriranje za SQL Server 2016

Najnovije kumulativno ažuriranje za SQL Server 2014

Status

Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku „Odnosi se na“.

Reference

Saznajte više o terminologiji koju Microsoft upotrebljava za opisivanje softverskih ažuriranja.