KB3023634 - แก้ไข: ข้อผิดพลาดการแปลงเกิดขึ้นเมื่อคุณใช้กฎทางธุรกิจใน MDS ของ SQL Server 2012 หรือ SQL Server 2014

นำไปใช้กับ
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

อาการ

ลองทำตามสถานการณ์ต่อไปนี้:

  • คุณสร้างกฎทางธุรกิจที่ทดสอบค่าว่างบนแอตทริบิวต์ตัวเลขใน Microsoft SQL Server 2012 Master Data Services (MDS)
  • คุณบันทึกและประกาศกฎธุรกิจ
  • คุณเปิดเอนทิตีใน MDS Explorer และเรียกใช้กฎทางธุรกิจเพื่อตรวจสอบความถูกต้องของสมาชิกเอนทิตี

ในสถานการณ์นี้ คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:

หมายเหตุ

8114: เกิดข้อผิดพลาดในการแปลงชนิดข้อมูล nvarchar เป็นตัวเลข จํานวนธุรกรรมหลังจาก EXECUTE ระบุจํานวนคําสั่ง BEGIN และ COMMIT ที่ไม่ตรงกัน จํานวนครั้งก่อนหน้า = 0, จํานวนปัจจุบัน = 1

หมายเหตุ: ปัญหานี้ยังเกิดขึ้นใน SQL Server 2014 MDS ที่ใช้ CU3 หรือเวอร์ชันที่ใหม่กว่า ตัวอย่างเช่น เมื่อคุณดําเนินกฎทางธุรกิจใน MDS ที่ตรวจสอบว่าแอตทริบิวต์วันที่ว่างเปล่าหรือไม่ คุณจะได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้

หมายเหตุ

ข้อผิดพลาดในการแปลงชนิดข้อมูล nvarchar เป็นวันที่และเวลา

      

การแก้ปัญหา

ปัญหานี้ได้รับการแก้ไขครั้งแรกในการอัปเดตแบบสะสมของ SQL Server ต่อไปนี้

การอัปเดตสะสม 6 สําหรับ SQL Server 2014 /en-us/help/3031047

การอัปเดตสะสม 4 สําหรับ SQL Server 2012 SP2 /en-us/help/3007556

การอัปเดตสะสม 14 สําหรับ SQL Server 2012 SP1 /en-us/help/3023636

เกี่ยวกับการอัปเดตสะสมสําหรับ SQL Server

การอัปเดตแบบสะสมใหม่แต่ละรายการสําหรับ SQL Server จะมีโปรแกรมแก้ไขด่วนและการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตแบบสะสมครั้งก่อนหน้า ตรวจดูการอัปเดตแบบสะสมล่าสุดสําหรับ SQL Server:

      

สถานะ

Microsoft ได้ยืนยันว่านี่เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ที่แสดงไว้ในส่วน "นำไปใช้กับ"