ข้อผิดพลาด PRB: "INSERT ล้มเหลว" เมื่อคุณปรับปรุงตารางที่มีการอ้างอิงในมุมมองในดัชนี

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 305333 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

อาการ

เมื่อคุณเรียกใช้กระบวนงานที่เก็บไว้หรือแทรก SQL งบโดยตรง ซึ่งพยายามแทรกแถวลงในตารางที่มีการอ้างอิงในมุมมองจัดทำดัชนี ข้อผิดพลาดต่อไปนี้อาจเกิดขึ้น:
INSERT ล้มเหลวเนื่องจากตัวเลือก SET ต่อไปนี้มีการตั้งค่าที่ไม่ถูกต้อง: 'ARITHABORT'
นอกจากนี้ ข้อผิดพลาดนี้อาจเกิดขึ้นแม้ว่า "SET ON ARITHABORT" ถูกรวมในชุดงานหรือกระบวนงานที่เก็บไว้ที่พยายาม INSERT

สาเหตุ

เมื่อต้องการแทรกแถวลงในตารางที่มีการอ้างอิงในมุมมองจัดทำดัชนีไว้เรียบร้อยแล้ว การตั้งค่าการตั้งค่าคอนฟิก SQL ARITHABORT ต้องถูกตั้งค่าเป็น ON นอกจากนี้ งบดุลที่ใช้การตั้งค่าการตั้งค่าคอนฟิกนี้ต้องถูกทำงานในชุดงานของตนเอง เนื่องจากกระบวนงานที่เก็บไว้ประกอบด้วยเพียงหนึ่งชุด การเพิ่มคำสั่งขั้นตอนไม่ทำงาน

การแก้ไข

เมื่อต้องการแก้ไขปัญหานี้ เพิ่มรหัส ADO ต่อไปนี้ไปยังโปรแกรมประยุกต์ของคุณหลังจากที่คุณเปิดการเชื่อมต่อกับฐานข้อมูลของคุณ:
MyConnection.Execute "SET ARITHABORT ON"
				
โดย:MyConnectionไม่มีการอ้างอิงไปคุณกำลังใช้การเรียกใช้กระบวนงานเก็บไว้ที่ทำการ INSERT หรือคำสั่ง SQL ที่แทรกวัตถุที่เชื่อมต่อ ADO

สถานะ

ลักษณะการทำงานนี้เกิดจากการออกแบบ

ข้อมูลเพิ่มเติม

set ARITHABORT ON เป็นหนึ่งในอ็อพชันที่จะไม่กำหนดโดยอัตโนมัติสำหรับการเชื่อมต่อที่ใช้ผู้ที่ OLE DB ให้สำหรับ SQL Server หรือโปรแกรมควบคุม ODBC เซิร์ฟเวอร์ SQL เนื่องจากการเชื่อมต่อ OLE DB และ ODBC ไม่ได้ระบุการตั้งค่า ARITHABORT ค่าเริ่มต้นของการเชื่อมต่อเริ่มต้นเซิร์ฟเวอร์ ซึ่งก็คือ ARITHABORT OFF

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติม ให้ดูที่หัวข้อ "การออกข้อดัชนี View" และ "ดัชนีการข้อสร้าง" ใน SQL Server 2000 หนังสือออนไลน์

คุณสมบัติ

หมายเลขบทความ (Article ID): 305333 - รีวิวครั้งสุดท้าย: 10 มกราคม 2554 - Revision: 4.0
ใช้กับ
  • Microsoft ActiveX Data Objects 2.7 เมื่อใช้กับ:
    • Microsoft SQL Server 2000 Standard Edition
Keywords: 
kbprb kbmt KB305333 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:305333

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com