2010-11-10 8 views
11

मैंने इससे संबंधित कुछ अन्य प्रश्न देखा, लेकिन वे MySQL नहीं थे।एक कुंजी गैर अद्वितीय अद्वितीय बनाने के लिए एक लाइव टेबल बदलें

डेटाबेस एक लाइव डेटाबेस है, इसलिए मैं तालिका को हटाना और फिर से बनाना नहीं चाहता हूं। मैं बस एक कॉलम अब अद्वितीय बनाना चाहता हूं, जो प्रकृति में कम अनुमोदित है इसलिए इसे किसी भी समस्या का कारण नहीं बनना चाहिए।

उत्तर

23

यदि आपके कॉलम अद्वितीय परिभाषित किया गया था UNIQUE खंड का उपयोग कर, तो का उपयोग करें:

ALTER TABLE mytable DROP INDEX constraint_name 

, या, यदि आपके बाधा परोक्ष नामित किया गया था,

ALTER TABLE mytable DROP INDEX column_name 

यदि यह अद्वितीय PRIMARY KEY खंड का उपयोग कर परिभाषित किया गया था, उपयोग करें:

ALTER TABLE mytable DROP PRIMARY KEY 

नोट, हालांकि, यदि आपकी तालिका है InnoDB, PRIMARY KEY छोड़ने से आपकी तालिका का निहित मनोरंजन होगा और सभी इंडेक्स का पुनर्निर्माण होगा, जो तालिका को लॉक कर देगा और इसे लंबे समय तक पहुंच से बाहर कर सकता है।

+0

मैं अद्वितीय कुंजी लेकिन इसकी दे त्रुटि छोड़ने का प्रयास किया। ऐसा करना संभव होगा या मुझे तालिका बनाने की आवश्यकता है। –

+0

@ रणबीर: कृपया इसे एक और प्रश्न के रूप में पोस्ट करें – Quassnoi

1

बस DROP अद्वितीय सूचकांक। इस तथ्य के साथ कोई समस्या नहीं है कि यह एक लाइव डीबी है। यदि यह वास्तव में बड़ी तालिका है, तो इंडेक्स हटा दिए जाने पर आप अस्थायी रूप से कुछ प्रश्नों को अवरुद्ध कर सकते हैं। लेकिन होना चाहिए केवल तभी होता है जब आप एक इंडेक्स जोड़ रहे हों।

ALTER TABLE table_name DROP INDEX index_name; 
1

एक कुछ मामलों में, डेवलपर (आप) छोड़ने के लिए नहीं चाहते हो सकता है बल्कि सिर्फ "विशिष्टता" से "नहीं-अद्वितीय" संशोधित करते हैं।

कदम:

  1. संदर्भ में मेज, जहां "संरचना" टैब पर संशोधन

  2. क्लिक करें बनाना चाहते जाएं (ब्राउज़ करें ज्यादातर अगले)

  3. देखो "+ इंडेक्स" लिंक के लिए, बस कॉलम के नीचे। हाँ ... अब इसे
  4. पर क्लिक करें अब आप सभी "इंडेक्स" देख सकते हैं और अब आप "ड्रॉप" बटन या संशोधित करने के लिए लिंक पर क्लिक कर सकते हैं।

उत्तर यहाँ पाया गया था: स्रोत: https://forums.phpfreaks.com/topic/164827-phpmyadmin-how-to-make-not-unique/

+0

एफवाईआई (अन्य googlers के लिए) ये phpmyadmin ऐप के लिए निर्देश हैं। –

+0

धन्यवाद अलेक्जेंडर बर्ड। एड-ऑन की बहुत सराहना की जाती है। हां, उपरोक्त निर्देश "phpMyAdmin ऐप" के लिए हैं। – AppEmmanuel