การแก้ไข: ข้อผิดพลาด "มีข้อผิดพลาดร้ายแรงที่เกิดขึ้นบนคำสั่งปัจจุบัน" ข้อความเมื่อคุณใช้ใน Freetexttable หรือ Containstable ฟังก์ชันบนวิวที่ในแบบสอบถาม CTE ใน SQL Server 2008 หรือ ใน SQL Server 2008 R2

นำไปใช้กับ: SQL Server 2008SQL Server 2008 R2SQL Server 2008 Service Pack 2

Microsoft กระจาย Microsoft SQL Server 2008 หรือ Microsoft SQL Server 2008 R2 แก้ไขเป็นแฟ้มหนึ่งแฟ้มที่สามารถดาวน์โหลดได้ เนื่องจากการแก้ไขเป็นแบบสะสม แต่ละรุ่นใหม่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และแก้ไขการรักษาความปลอดภัยทั้งหมดที่ถูกรวมกับ SQL Server 2008 ก่อนหน้าหรือ SQL Server 2008 R2 รุ่นที่แก้ไข

อาการ


สมมติว่า คุณมีอินสแตนซ์ที่มีชื่อ ใน Microsoft SQL Server 2008 หรือ ใน Microsoft SQL Server 2008 R2 ติดตั้งบนเซิร์ฟเวอร์ เมื่อคุณเรียกใช้แบบสอบถามทั่วไปตารางนิพจน์ (CTE) ที่ใช้ในFreetexttableหรือContainstableฟังก์ชันบนวิวที่ แบบสอบถาม CTE ล้มเหลว และข้อยกเว้นการละเมิดการเข้าถึงเกิดขึ้น นอกจากนี้ คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ข่าวสารเกี่ยวกับ 0, 11 ระดับ รัฐ 0, A บรรทัด 0 เกิดข้อผิดพลาดร้ายแรงเกิดขึ้นบนคำสั่งปัจจุบัน ผลลัพธ์ ถ้ามี ควรถูกละทิ้ง
ตัวอย่างเช่น ข้อยกเว้นการละเมิดการเข้าถึงเกิดขึ้นเมื่อคุณเรียกใช้รหัสดังต่อไปนี้:
WITH CTE AS  (select [Key] as Key, [Rank] from FREETEXTTABLE(< indexed view name >, *, '< search string >'))  SELECT * FROM CTE  

การแก้ไข


ข้อมูลโปรแกรมอัปเดตสะสม

SQL Server 2008 Service Pack ที่ 2

ก่อนการแก้ไขสำหรับปัญหานี้ถูกออกใน 4 ปรับปรุงสะสมสำหรับ SQL Server 2008 Service Pack 2 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงนี้ คลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
2527180 แพคเกจโปรแกรมปรับปรุงสะสม 4 สำหรับ SQL Server 2008 Service Pack 2
หมายเหตุ เนื่องจากรุ่นเป็นแบบสะสม แต่ละรุ่นแก้ไขใหม่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และแก้ไขการรักษาความปลอดภัยทั้งหมดที่ถูกรวมกับ SQL Server 2008 ก่อนหน้านี้แก้ไขการนำออกใช้ Microsoft ขอแนะนำว่า คุณควรพิจารณาถึงการใช้การแก้ไขที่นำออกใช้ล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
2402659 สร้าง SQL Server 2008 ที่เปิดตัวหลังจากเปิดตัว SQL Server 2008 Service Pack 2
โปรแกรมแก้ไขด่วนของ Microsoft SQL Server 2008 จะถูกสร้างขึ้นสำหรับ SQL Server service packs เฉพาะ คุณต้องใช้โปรแกรมแก้ไขด่วนของ SQL Server 2008 Service Pack 2 กับการติดตั้ง SQL Server 2008 Service Pack 2 โดยค่าเริ่มต้น โปรแกรมแก้ไขด่วนใด ๆ ที่มีให้ในเซอร์วิสแพ็ค SQL Server จะรวมอยู่ใน service pack ถัดไปของ SQL Server

SQL Server 2008 R2

การแก้ไขสำหรับปัญหานี้ถูกนำออกใช้แล้วใน 4 การปรับปรุงสะสมครั้งแรก สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับแพคเกจโปรแกรมปรับปรุงนี้สำหรับ SQL Server 2008 R2 คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
2345451 สะสมแพ็คเกจการปรับปรุง 4 สำหรับ SQL Server 2008 R2
หมายเหตุ เนื่องจากรุ่นเป็นแบบสะสม แต่ละรุ่นแก้ไขใหม่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และแก้ไขการรักษาความปลอดภัยทั้งหมดที่ถูกรวมกับการก่อนหน้า SQL Server 2008 R2 รุ่นที่แก้ไข เราขอแนะนำว่า คุณควรพิจารณาถึงการใช้การแก้ไขที่นำออกใช้ล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม โปรดคลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความใน Microsoft Knowledge Base:
981356 สร้าง SQL Server 2008 R2 ที่เปิดตัวหลังจากเปิดตัว SQL Server 2008 R2

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


เมื่อต้องการแก้ไขปัญหานี้ชั่วคราว ให้ใช้หนึ่งในวิธีต่อไปนี้:
  • ใช้มุมมอง ตารางชั่วคราว หรือตัวแปรตารางแทนที่จะเป็น CTE เพื่อเก็บผลลัพธ์ระดับกลาง
  • ปรับปรุงแบบสอบถามที่ใช้ตารางที่ได้รับหรือแบบสอบถามย่อย ซึ่งช่วยให้การใช้ CTE

สถานะ


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

อ้างอิง


สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการใช้นิพจน์ทั่วไปของตาราง แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:สำหรับข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชันFreetexttable (คำสั่งกลุ่ม SQL) แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้: สำหรับข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชันContainstable (คำสั่งกลุ่ม SQL) แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้: สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้าง วิวที่ แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้: สำหรับข้อมูลเพิ่มเติมเกี่ยวกับรุ่นให้บริการแบบเพิ่มหน่วยสำหรับ SQL Server คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
935897 แบบจำลองแบบเพิ่มหน่วยให้บริการพร้อมใช้งานจากทีม SQL Server จะจัดส่งโปรแกรมแก้ไขด่วนสำหรับปัญหาที่รายงาน
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแบบแผนการตั้งชื่อสำหรับการปรับปรุง SQL Server คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
822499แบบแผนการตั้งชื่อใหม่สำหรับแพคเกจปรับปรุงซอฟต์แวร์ของ Microsoft SQL Server
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับศัพท์เฉพาะในการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
824684 คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายโปรแกรมปรับปรุงซอฟต์แวร์ของ Microsoft