الأعراض
افترض أنك قمت بتمكين ميزة Change Data Capture (CDC) على جدول لتشغيل فحص السجل في Microsoft SQL Server. يتم تحويل معلمة pollinginterval من ثوان (ثوان) إلى ساعات (ح) في الإجراء المخزن sys.sp_cdc_scan . ومع ذلك، عندما تكون المعلمة pollinginterval أكبر من ساعة واحدة (>3600 ثانية)، تلاحظ أن النتيجة المحولة غير صحيحة.
أعلن @pollinginterval bigint، @seconds bigint، @minutes bigint، @hours bigint
تعيين @pollinginterval = 3600
حدد @seconds = @pollinginterval ٪ 60
حدد @minutes = ((@pollinginterval - @seconds) / 60) ٪ 60
حدد @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60
--- المحاولة التالية أسفل السطر بدلا من ذلك
--- حدد @hours = (@pollinginterval - (@minutes * 60) - @seconds) / 60 /60
حدد @hours، @minutes، @seconds
الحل
تم إصلاح هذه المشكلة في التحديثات التراكمية التالية SQL Server:
التحديث التراكمي 12 ل SQL Server 2017
التحديث التراكمي 3 SQL Server 2016 SP2
التحديث التراكمي 12 ل SQL Server 2016 SP1
يحتوي كل تحديث تراكمي جديد SQL Server على جميع الإصلاحات العاجلة وجميع إصلاحات الأمان التي تم تضمينها مع التحديث التراكمي السابق. اطلع على آخر التحديثات التراكمية SQL Server:
آخر تحديث تراكمي SQL Server 2017
الحالة
أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".
المراجع
تعرف على المصطلحاتالتي تستخدمها Microsoft لوصف تحديثات البرامج.