Príznaky
Predpokladajme, že na spustenie kontroly denníka v Microsoft SQL Server povolíte funkciu Zmeniť záznam údajov (CDC) v tabuľke. Parameter pollinginterval sa v uloženej procedúre sys.sp_cdc_scan skonvertuje z sekúnd (s) na hodiny (h). Ak je však parameter pollinginterval väčší ako jedna hodina (>3600 s), všimnete si, že skonvertovaný výsledok je nesprávny.
Poznámka
deklarovať @pollinginterval bigint, @seconds bigint, @minutes bigint, @hours bigint
set @pollinginterval = 3600
Vyberte @seconds = @pollinginterval % 60
SELECT @minutes = ((@pollinginterval - @seconds) / 60) % 60
SELECT @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- Ďalší pokus namiesto toho pod riadkom
--- vyberte @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
vyberte @hourspoložku , @minutes, @seconds
Riešenie
Tento problém je opravený v nasledujúcich kumulatívnych aktualizáciách pre SQL Server:
Kumulatívna aktualizácia 12 pre SQL Server 2017
Kumulatívna aktualizácia 3 pre SQL Server 2016 SP2
Kumulatívna aktualizácia 12 pre SQL Server 2016 SP1
Kumulatívna aktualizácia 1 pre SQL Server 2014 SP3
Kumulatívna aktualizácia 14 pre SQL Server 2014 SP2
Informácie o kumulatívnych aktualizáciách pre SQL Server:
Každá nová kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchle opravy a opravy zabezpečenia, ktoré boli zahrnuté v predchádzajúcej kumulatívnej aktualizácii. Pozrite si najnovšie kumulatívne aktualizácie pre SQL Server:
Najnovšia kumulatívna aktualizácia pre SQL Server 2017
Najnovšia kumulatívna aktualizácia pre SQL Server 2016
Najnovšia kumulatívna aktualizácia pre SQL Server 2014
Stav
Spoločnosť Microsoft potvrdila, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v časti Vzťahuje sa na.
Odkazy
Získajte informácie o terminológii, ktorú Microsoft používa na popis aktualizácií softvéru.