जवाबों:
एक बेहतर तरीका है जो आपको तालिका को बदलने की आवश्यकता नहीं है:
mysql> DROP INDEX email ON fuinfo;
जहां ईमेल अद्वितीय कुंजी (इंडेक्स) का नाम है।
आप इसे इस तरह वापस भी ला सकते हैं:
mysql> CREATE UNIQUE INDEX email ON fuinfo(email);
जहां IDEX के बाद का ईमेल इंडेक्स का नाम है और यह वैकल्पिक नहीं है। आप INDEX की जगह KEY का उपयोग कर सकते हैं।
इसके अलावा यह संभव है कि बनाने (हटाने) बहुरंगी अद्वितीय indecies की तरह:
mysql> CREATE UNIQUE INDEX email_fid ON fuinfo(email, fid);
mysql> DROP INDEX email_fid ON fuinfo;
यदि आपने बहुरंगी अनुक्रमणिका का नाम निर्दिष्ट नहीं किया है तो आप इसे इस तरह हटा सकते हैं:
mysql> DROP INDEX email ON fuinfo;
जहां ईमेल कॉलम नाम है।
mysql> DROP INDEX ईमेल ON fuinfo;
जहां ईमेल अद्वितीय कुंजी (कॉलम नाम के बजाय) है। आप द्वारा अद्वितीय कुंजी का नाम पाते हैं
mysql> SHOW CREATE TABLE fuinfo;
उदाहरण के लिए, आप यहां पर अद्वितीय कुंजी का नाम देख सकते हैं, जो ईमेल_2 हो सकती है। इसलिए...
mysql> DROP INDEX email_2 ON fuinfo;
mysql> DESCRIBE fuinfo;
यह दिखाना चाहिए कि सूचकांक हटा दिया गया है
नीचे क्वेरी का उपयोग करें:
ALTER TABLE `table_name` DROP INDEX key_name;
यदि आपको key_name नहीं पता है, तो पहले क्वेरी से नीचे का प्रयास करें, आप key_name प्राप्त कर सकते हैं।
SHOW CREATE TABLE table_name
या
SHOW INDEX FROM table_name;
यदि आप mysql तालिका से प्राथमिक कुंजी को निकालना / छोड़ना चाहते हैं, तो उसके लिए क्वेरी से नीचे का उपयोग करें
ALTER TABLE `products` DROP INDEX `PRIMARY`;
से लिया गया कोड: http://chandreshrana.blogspot.in/2015/10/how-to-remove-unique-key-from-mysql.html
इससे दूसरों को मदद मिल सकती है
alter table fuinfo drop index fuinfo_email_unique
MySQL 5.7.11 के लिए
Step-1: सबसे पहले Unique Key प्राप्त करें
इसे प्राप्त करने के लिए इस क्वेरी का उपयोग करें:
१.१) शो टेबल यूजर;
आखिरी में, यह इस तरह होगा:
.....
.....
अद्वितीय कुंजी UK_8bv559q1gobqoulqpitq0gvr6
( phoneNum
)
.....
....
चरण -2: इस क्वेरी द्वारा अद्वितीय कुंजी निकालें।
अन्य तालिका उपयोगकर्ता DROP INDEX UK_8bv559q1gobqoulqpitq0gvr6;
चरण -3: इस क्वेरी द्वारा तालिका जानकारी की जाँच करें:
DESC उपयोगकर्ता;
यह दिखाना चाहिए कि सूचकांक हटा दिया गया है
बस इतना ही।
ALTER TABLE 0_value_addition_setup DROP INDEX value_code
email
स्तंभ के लिए कोई विदेशी कुंजी मौजूद है (त्रुटि 150) तो आप इस तरह से एक कुंजी को छोड़ने में सक्षम नहीं हो सकते हैं । इसे काम करने के लिए, पहले विदेशी कुंजी छोड़ें, फिर सूचकांक छोड़ें, और बाद में विदेशी कुंजी को फिर से बनाएँ। जैसे ALTER TABLE fuinfo DROP विदेशी कुंजी fk_name_for_email;