นำไปใช้กับ
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Enterprise Core SQL Server 2012 Standard 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 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 2016 Service Pack 1

อาการ

คุณเปลี่ยนชนิดข้อมูลของคอลัมน์ในตารางฐานข้อมูลจาก ntext เป็น nvarchar (max) บนเซิร์ฟเวอร์ที่ใช้ Microsoft SQL server ๒๐๑๒, ๒๐๑๔หรือ๒๐๑๖ เมื่อคุณอัปเดตตารางโดยการเพิ่มมากกว่า๔,๐๐๐ระเบียน DBCC CHECKDB อาจรายงานข้อผิดพลาดที่คล้ายกับต่อไปนี้:

Msg ๘๙๖๑ระดับ16สถานะ 1, LineNumber ข้อผิดพลาดตาราง: ObjectID, indexID, partitionID, allocUnitID (ชนิดข้อมูล LOB) โหนด data off-row ที่หน้า (PageID), slot 0, textID ไม่ตรงกับการอ้างอิงจากหน้า (PageID), slot 0 Msg ๘๙๖๑ระดับ16สถานะ 1, LineNumber ข้อผิดพลาดตาราง: ObjectID, indexID, partitionID, allocUnitID (ชนิดข้อมูล LOB) โหนด data off-row ที่หน้า (PageID), slot 0, textID ไม่ตรงกับการอ้างอิงจากหน้า (PageID), slot 0 ข่าวสารเกี่ยวกับ๘๙๒๙ระดับ16รัฐ 1, LineNumberObjectID, indexID, partitionID, AllocUnitID (ชนิดข้อมูลในแถว): ข้อผิดพลาดที่พบในข้อมูลที่ไม่ได้อยู่ในแถวที่มี ID ของระเบียนข้อมูลที่ระบุโดยการกำจัด = (rid) ผลลัพธ์ DBCC สำหรับ 'ชื่อ' มี1แถวใน1หน้าสำหรับวัตถุ "ชื่อ" CHECKTABLE พบข้อผิดพลาดในการจัดสรร0และข้อผิดพลาดความสอดคล้อง3ข้อผิดพลาดในตาราง 'ชื่อ' (ObjectID) repair_allow_data_loss เป็นระดับการซ่อมแซมน้อยที่สุดสำหรับข้อผิดพลาดที่พบโดย DBCC CHECKTABLE (ชื่อ. ชื่อ) การดำเนินการ DBCC เสร็จสมบูรณ์ ถ้า DBCC พิมพ์ข้อความแสดงข้อผิดพลาดให้ติดต่อผู้ดูแลระบบของคุณ

การแก้ไข

ปัญหานี้ได้รับการแก้ไขแล้วในการอัปเดตที่สะสมต่อไปนี้สำหรับ SQL Server:

การอัปเดตที่สะสม5สำหรับ SQL Server ๒๐๑๖ RTM

การอัปเดตที่สะสม2สำหรับ SQL Server ๒๐๑๖ SP1

การอัปเดตที่สะสม4สำหรับ SQL Server ๒๐๑๔ SP2

การอัปเดตที่สะสม11สำหรับ SQL Server ๒๐๑๔ SP1

การอัปเดตที่สะสม7สำหรับ SQL Server ๒๐๑๒ Service Pack 3

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

การอัปเดตที่สะสมล่าสุดสำหรับ SQL Server ๒๐๑๖

การอัปเดตที่สะสมล่าสุดสำหรับ SQL Server ๒๐๑๔

การอัปเดตที่สะสมล่าสุดสำหรับ SQL Server ๒๐๑๒ SP3

วิธีแก้ไขปัญหาชั่วคราว

เมื่อต้องการหลีกเลี่ยงปัญหานี้หลังจากที่คุณเปลี่ยนชนิดข้อมูลให้ตั้งค่าตัวเลือกแถวที่มีขนาดใหญ่เป็น1

ALTER TABLE TableName ALTER COLUMN COLUMN_NAME nvarchar(max) NOT NULL 
go
exec sp_tableoption 'TableName', 'large value types out of row', '1'

สถานะ

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

อ้างอิง

เรียนรู้เกี่ยวกับคำ ศัพท์เฉพาะ ทางที่ Microsoft ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ