อาการ
สมมติว่าคุณมีฐานข้อมูลที่เปิดใช้งาน FILESTREAM ในอินสแตนซ์ของ Microsoft SQL Server เมื่อคุณเริ่มทรานแซคชันและใช้ SqlFileStream .NET API เพื่อเปิดไฟล์ Filestream งานอาจล้มเหลวและโยนข้อยกเว้นเนื่องจากปัจจัยภายนอก
ถ้าคุณเปิดไฟล์อีกครั้งโดยใช้ SqlFileStream ภายในทรานแซคชันเดียวกันและยอมรับคุณอาจได้รับข้อความแสดงข้อผิดพลาดภายในที่คล้ายกับต่อไปนี้:
วันที่เวลา spidที่ไม่รู้จักข้อผิดพลาด: ๕๕๗๑<c/> ความรุนแรง:23<c/> สถานะ: 3.วันที่เวลาspidที่ไม่รู้จักข้อผิดพลาด FILESTREAM ภายใน: ล้มเหลวในการเข้าถึงตารางคอลเลกชันของเบจ
ถ้าคุณเรียกใช้ dbcc checktable (' sys.filestream_tombstone_2073058421 ')คุณอาจได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
Msg ๘๙๕๑ระดับ16สถานะ1บรรทัด LineNumber
ข้อผิดพลาดตาราง: ตาราง dbcc checktable (' sys.filestream_tombstone_2073058421 ') (ID IDNumber) แถวข้อมูลไม่มีแถวดัชนีที่ตรงกันในดัชนี ' FSTSNCIdx ' (IDIDNumber) คีย์ที่หายไปหรือไม่ถูกต้องสำหรับการจับคู่แถวดัชนี:
การแก้ไข
การแก้ไขสำหรับปัญหานี้จะรวมอยู่ในการอัปเดต SQL Server ต่อไปนี้:
การอัปเดตที่สะสม13สำหรับ SQL Server ๒๐๑๗
เกี่ยวกับ SQL Server รุ่น
รุ่นใหม่แต่ละรุ่นสำหรับ SQL Server ประกอบด้วยโปรแกรมแก้ไขด่วนและการแก้ไขปัญหาด้านความปลอดภัยทั้งหมดที่อยู่ในรุ่นก่อนหน้า เราขอแนะนำให้คุณติดตั้งรุ่นล่าสุดสำหรับ SQL Server เวอร์ชันของคุณ:
วิธีแก้ไขปัญหาชั่วคราว
เมื่อต้องการแก้ไขปัญหานี้ให้สร้างดัชนีฐานข้อมูลโดยใช้คำสั่งDBCC CHECKTABLE
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"
อ้างอิง
เรียนรู้เกี่ยวกับคำ ศัพท์ มาตรฐานที่ Microsoft ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์