KB4459220 - FIX: valed tulemused ilmnevad, kui teisendate parameetri "pollinginterval" sekundites tundides sys.sp_cdc_scan SQL Server

Rakenduskoht
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)

Sümptomid

Oletagem, et lubate change Data Jäädvustamine (CDC) funktsiooni tabelis käivitada logi skannimine Microsoft SQL Server. Parameeter pollinginterval teisendatakse salvestatud protseduuri sys.sp_cdc_scan s sekunditest (s) tundideks (h). Kui aga küsitlusintervall parameeter on suurem kui üks tund (>3600 s), märkate, et teisendatud tulem on vale.

Märkus.

kuuluta @pollinginterval suurint, @seconds bigint, @minutes bigint, @hours bigint
  hulk @pollinginterval = 3600
  valige @seconds = @pollinginterval % 60
  select @minutes = ((@pollinginterval - @seconds) / 60) % 60
  select @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- selle asemel järgmine katse rea all
--- valige @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
  valige @hours, , @minutes@seconds

Lahendus

See probleem on lahendatud järgmistes SQL Server koondvärskendustes:

SQL Server 2017 koondvärskendus 12

SQL Server 2016 SP2 koondvärskendus 3

SQL Server 2016 SP1 koondvärskendus 12

SQL Server 2014 SP3 koondvärskendus 1

SQL Server 2014 SP2 koondvärskendus 14

Teave SQL Server koondvärskenduste kohta.

Iga uus koondvärskendus SQL Server sisaldab kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmise koondvärskenduse. Vaadake uusimaid SQL Server koondvärskendusi.

Uusim koondvärskendus SQL Server 2017 jaoks

Uusim koondvärskendus SQL Server 2016 jaoks

Uusim koondvärskendus SQL Server 2014 jaoks

Olek

Microsoft on kinnitanud, et see on jaotises „Rakenduskoht“ loetletud Microsofti toodete korral esinev probleem.

Viited

Lisateave Microsofti tarkvaravärskenduste terminoloogia kohta.