SQL Server Management Studio ไม่ยอมให้ฉันเพิ่มดัชนีลงในตาราง


114

เมื่อฉันคลิกขวาที่โฟลเดอร์ indexes ในตารางรายการเมนู "ดัชนีใหม่" จะเป็นสีเทา ฉันไม่เข้าใจว่าทำไม ฉันได้ลบข้อมูลทั้งหมดในตารางแล้วในกรณีและรีเฟรชและรีสตาร์ท SSMS แต่โชคไม่ดี ฉันใช้ SQL Server 2012 Business Intelligence SP1 CTP


26
สิ่งนี้จะเกิดขึ้นหากคุณเปิดตารางในตัวออกแบบอยู่แล้วยกเว้นคุณบอกว่าคุณเริ่ม SSMS ใหม่ คุณเข้าไปใน Design Table หลังจากรีสตาร์ทหรือไม่?
Martin Smith

ฉันยืนยันว่าปัญหานี้ยังคงเป็นปัญหาใน SQL Server 2014
Keith

@Martin Smith: ขอบคุณที่ทำงานให้ฉัน
Bhavin Shah

แผนภาพฐานข้อมูลที่มีตารางอยู่ก็จะทำให้เกิดสิ่งนี้เช่นกัน (เนื่องจากเป็นมุมมอง 'ตารางออกแบบ')
JDC

คำตอบ:


260

วิธีแก้ไข:ปิดตัวออกแบบตารางและไดอะแกรมฐานข้อมูลแล้วลองอีกครั้ง หากไม่ได้ผลให้ปิดหน้าต่างทั้งหมดใน Management Studio

สาเหตุ:ตัวเลือก "ดัชนีใหม่" ถูกปิดใช้งานเมื่อตารางถูกล็อกโดยหน้าต่างนักออกแบบ


15
ขอบคุณ Microsoft โปรดปรับปรุง มันน่ารำคาญมากที่เห็นเป็นnew indexสีเทา
Valamas

1
ใช่คุณต้องปิดตัวออกแบบตารางที่ไม่มีส่วนเกี่ยวข้องกับตารางที่เป็นปัญหา grr
Simon_Weaver

2
ฉันประสบปัญหาเดียวกันเมื่อพยายามเพิ่ม "คอลัมน์ที่รวม" ตอนนี้ฉันเพิ่งรู้ว่าเป็นเวลาหลายปี (ทศวรรษที่แน่นอน) สิ่งที่ฉันต้องทำคือปิด Table Designer และคลิกขวาที่ดัชนีเพื่อเลือก "Properties" เพื่อเพิ่ม / แก้ไข .... ปีทั้งหมดนี้เสียไปกับ การเขียนสคริปต์ที่กำหนดเอง face-palm ฉันต้องการความเยาว์วัยของฉันกลับคืนมา!
MikeTeeVee

ว้าวช่วยวันของฉัน! +1
Al Kepp

6

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

create index ix_MyTable_Column1
on dbo.MyTable(Column1 asc)

http://msdn.microsoft.com/en-us/library/ms188783.aspx


3

ปิดตารางถ้าเปิดในตัวออกแบบ คลิกขวาที่ดัชนีสำหรับตารางแล้วเลือกสร้างใหม่ทั้งหมด สิ่งนี้จะแก้ไขได้ ...


1

ในกรณีของฉันซึ่งเป็นมุมมองไม่ใช่ตารางเป็นเพราะมุมมองไม่ได้สร้างขึ้นโดยใช้ Schema Binding ฉันแก้ไขโดยใช้ Schema Binding จากนั้นฉันสามารถเพิ่มดัชนีในมุมมองได้ HTH


1

ตารางไม่มีคีย์หลักแบบคลัสเตอร์ตามที่ต้องการโดยดัชนีเชิงพื้นที่ ตรวจสอบให้แน่ใจว่ามีคอลัมน์คีย์หลักอยู่ในตารางก่อนสร้างดัชนีเชิงพื้นที่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.