ข้อความข้อผิดพลาดในการแก้ไข: ใน SQL Server 2008 เมื่อคุณเรียกใช้คำสั่ง SELECT แทรกบนตาราง: "ละเมิดข้อจำกัด KEY หลัก '<primarykey>' ไม่สามารถแทรกแป้นที่ซ้ำกันในวัตถุ ' <tablename> ' "</tablename> </primarykey>

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 970507 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
Microsoft กระจาย Microsoft SQL Server 2008 แก้ไขเป็นแฟ้มเดียวที่สามารถดาวน์โหลดได้ เนื่องจากการแก้ไขสะสม แต่ละรุ่นที่ใหม่ที่ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และแก้ไขการแก้ไขการรักษาความปลอดภัยทั้งหมดที่มาพร้อมกับ SQL Server 2008 ก่อนหน้าออก
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

อาการ

พิจารณาสถานการณ์ต่อไปนี้::
  • คุณมี Microsoft SQL Server 2008 ติดตั้งบนคอมพิวเตอร์แบบหลายตัวประมวลผล
  • คุณได้แทรกที่เลือกคำชี้แจงสิทธิ์บนตารางที่ประกอบด้วยคีย์หลัก

    หมายเหตุ:ในการแทรกที่เลือกประโยค ตารางที่ได้รับข้อมูลเป็นตารางเดียวกันที่ outputs ข้อมูล ตัวอย่าง::
    INSERT T1 … SELECT T1
  • คุณอ้างอิงตารางอื่น ๆ ในที่นี้แทรกที่เลือกคำสั่ง การอ้างอิงเหล่านี้รวมตารางชั่วคราว

    หมายเหตุ:มีการอ้างอิงถึงในตารางนี้จากอนุประโยค หรือตารางถูกอ้างอิงในเงื่อนไขแบบสอบถามย่อยหรือเข้าร่วม
เมื่อคุณเรียกใช้คำสั่ง คุณได้รับข้อความแสดงข้อความแสดงข้อผิดพลาดต่อไปนี้:

msg 2627 ระดับ 14 สถานะ 1
การละเมิดข้อจำกัด KEY หลัก 'PrimaryKey'. ไม่สามารถแทรกแป้นที่ซ้ำกันในวัตถุ 'TableName'.

ถ้าคุณตรวจสอบข้อความแสดงแผนการดำเนินการ คุณค้นหาที่นั้นเข้าร่วมตัวดำเนินการ และเก็บพักใน eagerตัวดำเนินการทำงานไปพร้อม ๆ กัน สวิตช์นี้เก็บพักใน eagerตัวดำเนินอยู่ภายใต้การเข้าร่วมตัวดำเนินการ นอกจากนี้ ตารางที่ได้รับข้อมูลในรายงานเป็นตาราง inner ของการเข้าร่วม

หมายเหตุ:ปัญหานี้ยังเกิดเมื่อคุณรันการเลือกการปรับปรุงคำสั่งหรือลบการเลือกคำสั่ง

สาเหตุ

ปัญหานี้เกิดขึ้นเนื่องจากมีปัญหาที่เกิดขึ้นในการเก็บพักสำหรับการเก็บพักใน eagerผู้ปฏิบัติงานที่เก็บพักที่สร้างแถวมากกว่ากว่าที่คาดไว้ ลักษณะการทำงานนี้ทำให้เกิดปัญหาแป้นที่ซ้ำกัน

การแก้ไข

ข้อมูลการปรับปรุงที่สะสม

โปรแกรมแก้ไขสำหรับปัญหานี้ถูกนำออกใช้ก่อนใน Update 3 สะสมสำหรับ SQL Server 2008 Service Pack 1 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับแพคเกจโปรแกรมปรับปรุงที่สะสมนี้ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
971491แพคเกจโปรแกรมปรับปรุงที่สะสม 3 สำหรับ SQL Server 2008 Service Pack 1
หมายเหตุ:เนื่องจาก builds สะสม แต่ละรุ่นใหม่ของโปรแกรมแก้ไขด่วนประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และแก้ไขการแก้ไขการรักษาความปลอดภัยทั้งหมดที่มาพร้อมกับ SQL Server 2008 ก่อนหน้าออก Microsoft แนะนำว่า คุณควรพิจารณาถึงการใช้โปรแกรมแก้ไขด่วนรุ่นล่าสุดที่ประกอบด้วยโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความในฐานความรู้ของ Microsoft::
970365สร้าง SQL Server 2008 ที่หลังจากที่มีการนำออกใช้ SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008 โปรแกรมแก้ไขด่วนถูกสร้างสำหรับการระบุของ sql server เซอร์วิสแพ็ค คุณต้องใช้โปรแกรมแก้ไขด่วนของ SQL Server 2008 Service Pack 1 ไปยังการติดตั้ง SQL Server 2008 Service Pack 1 โดยค่าเริ่มต้น hotfix ที่ให้ไว้ใน service pack ของ SQL Server จะรวมอยู่ใน service pack ถัดไปของ SQL Server

ข้อมูลโปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนที่ได้รับการสนับสนุนจาก Microsoft พร้อมใช้งานแล้ว แต่มีเป้าหมายเพียงเพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น ใช้ hotfix นี้เฉพาะกับระบบต่างๆ ที่พบปัญหานี้เท่านั้น hotfix นี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณไม่ได้รับอย่างจากจากปัญหานี้ เราขอแนะนำให้ คุณรอ service pack รุ่นถัดไปของ SQL Server 2008 ซึ่งประกอบด้วยโปรแกรมแก้ไขด่วนนี้

เมื่อต้องการแก้ไขปัญหานี้ทันที ให้ติดต่อฝ่ายบริการสนับสนุนผลิตภัณฑ์ของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการทั้งหมดของหมายเลขโทรศัพท์ของบริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับการจ่ายสนับสนุน แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
http://support.microsoft.com/contactus/?ws=support
หมายเหตุ:ในกรณีพิเศษ อาจมีการยกเว้นค่าใช้จ่ายสำหรับการสนับสนุนทางโทรศัพท์หากผู้เชี่ยวชาญในการให้การสนับสนุนของ Microsoft ระบุว่าการปรับปรุงเฉพาะจะแก้ปัญหาของคุณได้ ค่าใช้จ่ายปกติจะใช้กับการให้การสนับสนุนสำหรับคำตอบเพิ่มเติมและเรื่องที่ไม่สามารถจัดเป็นคำถามเกี่ยวกับการอัพเดทเฉพาะ

ข้อกำหนดเบื้องต้น

เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องมีคอมพิวเตอร์ที่ใช้ SQL Server 2008 Service Pack 1 (SP1)

ข้อมูลการเริ่มต้นระบบใหม่

คุณไม่จำเป็นต้องเริ่มต้นคอมพิวเตอร์ใหม่หลังจากใช้โปรแกรมแก้ไขด่วนนี้

ข้อมูลรีจิสทรี

คุณไม่มีการเปลี่ยนแปลงรีจิสทรี

ข้อมูลไฟล์ Hotfix

โปรแกรมแก้ไขด่วนนี้ประกอบด้วยเฉพาะแฟ้มที่จำเป็นต้องแก้ไขปัญหาที่แสดงรายการของบทความนี้ โปรแกรมแก้ไขด่วนนี้อาจไม่มีแฟ้มทั้งหมดที่คุณต้องมีเพื่อที่จะปรับปรุงผลิตภัณฑ์เป็นรุ่นล่าสุดอย่างสมบูรณ์

โปรแกรมแก้ไขด่วนรุ่นภาษาอังกฤษนี้มีแอตทริบิวต์แฟ้ม (หรือแอตทริบิวต์แฟ้มหลังจากนี้) ซึ่งแสดงในตารางต่อไปนี้ วันที่และเวลาของแฟ้มเหล่านี้จะปรากฏในรูปแบบเวลามาตรฐานสากล (UTC) เมื่อคุณดูข้อมูลแฟ้ม ข้อมูลจะถูกแปลงเป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้โซนเวลาแท็บในนั้นวันที่และเวลารายการใน'แผงควบคุม'
สำหรับทั้งหมดที่ได้รับการสนับสนุน x ที่ใช้ x86 รุ่นของโปรแกรมฐานข้อมูล SQL Server 2008
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Sqlaccess.dll2007.100.2712.0405,35213 2009 พฤษภาคม17:53x86
Keyfile.dll2007.100.2712.013,65613 2009 พฤษภาคม15:37x86
Sqlservr.exe2007.100.2712.042,729,32013 2009 พฤษภาคม17:56x86
สำหรับทั้งหมดที่ได้รับการสนับสนุน x ที่ใช้ x86 รุ่นบริการวิเคราะห์ SQL Server 2008
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Msmdlocal.dll10.0.2712.023,461,72013 2009 พฤษภาคม16:08x86
Msmdsrv.exe10.0.2712.021,955,41613 2009 พฤษภาคม16:09x86
Keyfile.dll2007.100.2712.013,65613 2009 พฤษภาคม15:37x86
Msmdpump.dll10.0.2712.06,180,69613 2009 พฤษภาคม16:08x86
Msmdspdm.dll10.0.2712.0178,00813 2009 พฤษภาคม16:08x86
Msmgdsrv.dll10.0.2712.08,558,93613 2009 พฤษภาคม16:09x86
Msolap100.dll10.0.2712.06,532,95213 2009 พฤษภาคม16:09x86
สำหรับทั้งหมดที่ได้รับการสนับสนุน x 64 รุ่นโปรแกรมฐานข้อมูล SQL Server 2008
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Sqlaccess.dll2007.100.2712.0412,00814 2009 พฤษภาคม01:15x86
Keyfile.dll2007.100.2712.014,18413 2009 พฤษภาคม23:55x64
Sqlservr.exe2007.100.2712.057,873,25614 2009 พฤษภาคม01:17x64
สำหรับทั้งหมดที่ได้รับการสนับสนุน x 64-รุ่นที่ใช้บริการวิเคราะห์ SQL Server 2008
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Msmdlocal.dll10.0.2712.023,461,72013 2009 พฤษภาคม16:08x86
Msmdlocal.dll10.0.2712.044,436,82414 2009 พฤษภาคม00:10x64
Msmdsrv.exe10.0.2712.043,713,36814 2009 พฤษภาคม00:10x64
Keyfile.dll2007.100.2712.014,18413 2009 พฤษภาคม23:55x64
Msmdpump.dll10.0.2712.07,430,48814 2009 พฤษภาคม00:10x64
Msmdspdm.dll10.0.2712.0178,02414 2009 พฤษภาคม00:10x86
Msmgdsrv.dll10.0.2712.08,558,93613 2009 พฤษภาคม16:09x86
Msmgdsrv.dll10.0.2712.012,332,37614 2009 พฤษภาคม00:11x64
Msolap100.dll10.0.2712.06,532,95213 2009 พฤษภาคม16:09x86
Msolap100.dll10.0.2712.08,153,94414 2009 พฤษภาคม00:11x64
สำหรับทั้งหมดได้รับการสนับสนุนเวอร์ชันที่ใช้ Itanium ของโปรแกรมฐานข้อมูล SQL Server 2008
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Sqlaccess.dll2007.100.2712.0398,69613 2009 พฤษภาคม17:01x86
Keyfile.dll2007.100.2712.019,30413 2009 พฤษภาคม15:26IA-64
Sqlservr.exe2007.100.2712.0111,042,40813 2009 พฤษภาคม17:08IA-64
สำหรับทั้งหมดได้รับการสนับสนุนเวอร์ชันที่ใช้ Itanium ของบริการวิเคราะห์ SQL Server 2008
ยุบตารางนี้ขยายตารางนี้
ชื่อแฟ้มรุ่นของแฟ้มขนาดแฟ้มวันที่เวลาแพลทฟอร์ม
Msmdlocal.dll10.0.2712.023,461,72013 2009 พฤษภาคม16:08x86
Msmdlocal.dll10.0.2712.057,508,18413 2009 พฤษภาคม15:44IA-64
Msmdsrv.exe10.0.2712.058,860,88813 2009 พฤษภาคม15:46IA-64
Keyfile.dll2007.100.2712.019,30413 2009 พฤษภาคม15:26IA-64
Msmdpump.dll10.0.2712.08,943,44813 2009 พฤษภาคม15:45IA-64
Msmdspdm.dll10.0.2712.0178,00813 2009 พฤษภาคม15:45x86
Msmgdsrv.dll10.0.2712.015,485,80013 2009 พฤษภาคม15:สีกันIA-64
Msmgdsrv.dll10.0.2712.08,558,93613 2009 พฤษภาคม16:09x86
Msolap100.dll10.0.2712.010,065,24013 2009 พฤษภาคม15:สีกันIA-64
Msolap100.dll10.0.2712.06,532,95213 2009 พฤษภาคม16:09x86

การหลีกเลี่ยงปัญหา

เมื่อต้องการแก้ไขปัญหานี้ กำหนดคำแนะนำการสอบถาม MAXDOP หรือตัวเลือก MAXDOP1คำสั่งหรือระดับเซิร์ฟเวอร์

หมายเหตุ:ระดับของเซิร์ฟเวอร์อ็อพชัน MAXDOP มีผลต่อประสิทธิภาพการทำงานของการสอบถามทั้งหมดที่ทำงานบนเซิร์ฟเวอร์

สถานะ

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

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

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


สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเค้าร่างตั้งชื่อสำหรับการปรับปรุงใน SQL Server คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
822499แบบแผนการตั้งชื่อใหม่สำหรับแพคเกจโปรแกรมปรับปรุงซอฟต์แวร์ของ Microsoft SQL Server


สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำศัพท์ของการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความใน Microsoft Knowledge Base::
824684คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายปรับปรุงซอฟต์แวร์ของ Microsoft

คุณสมบัติ

หมายเลขบทความ (Article ID): 970507 - รีวิวครั้งสุดท้าย: 22 ตุลาคม 2553 - Revision: 2.0
ใช้กับ
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Workgroup
Keywords: 
kbsurveynew kbfix kbqfe kbexpertiseadvanced kbmt KB970507 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:970507

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

 

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