อาการ
สมมติว่า คุณเปิดใช้งานการเปลี่ยนแปลงข้อมูลจับภาพ (CDC) คุณลักษณะบนตารางเพื่อเรียกใช้การสแกนแฟ้มบันทึกใน Microsoft SQL Server พารามิเตอร์ pollinginterval จะถูกแปลงจากวินาที (s) เป็นชั่วโมง (h) ใน sys.sp_cdc_scan กระบวนงานที่เก็บไว้ อย่างไรก็ตาม เมื่อพารามิเตอร์ pollinginterval มากกว่าหนึ่งชั่วโมง (>3600 s) คุณสังเกตเห็นว่าผลลัพธ์ที่แปลงแล้วไม่ถูกต้อง
ประกาศ@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 ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์