KB4459220 - CORREÇÃO: Ocorrem resultados incorretos quando converte o parâmetro "pollinginterval" de segundos para horas em sys.sp_cdc_scan no SQL Server

Aplica-se A
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)

Sintomas

Suponha que ativa a funcionalidade Alterar Dados Captura (CDC) numa tabela para executar uma análise de registos no Microsoft SQL Server. O parâmetro pollinginterval é convertido de segundos (s) em horas (h) no procedimento armazenado sys.sp_cdc_scan . No entanto, quando o parâmetro pollinginterval é superior a uma hora (>3600 s), repara que o resultado convertido está incorreto.

Nota

declarar @pollinginterval bigint, @seconds bigint, @minutes bigint, @hours bigint
  set @pollinginterval = 3600
  selecione @seconds = @pollinginterval % 60
  select @minutes = ((@pollinginterval - @seconds) / 60) % 60
  select @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- seguinte tentativa abaixo da linha
--- selecione @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
  selecione @hours, , @minutes@seconds

Resolução

Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:

Atualização Cumulativa 12 para SQL Server 2017

Atualização Cumulativa 3 para SQL Server 2016 SP2

Atualização Cumulativa 12 para SQL Server 2016 SP1

Atualização Cumulativa 1 para SQL Server 2014 SP3

Atualização Cumulativa 14 para SQL Server 2014 SP2

Acerca das atualizações cumulativas para SQL Server:

Cada nova atualização cumulativa para SQL Server contém todas as correções e todas as correções de segurança incluídas na atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:

Atualização cumulativa mais recente do SQL Server 2017

Atualização cumulativa mais recente do SQL Server 2016

Atualização cumulativa mais recente para SQL Server 2014

Estado

A Microsoft confirmou que se trata de um problema nos produtos Microsoft listados na secção "Aplica-se a".

Referências

Saiba mais sobre a terminologia que a Microsoft utiliza para descrever as atualizações de software.