जवाबों:
ALTER IGNORE TABLE mytbl ADD UNIQUE (columnName);
MySQL 5.7.4 या बाद के लिए:
ALTER TABLE mytbl ADD UNIQUE (columnName);
MySQL 5.7.4 के अनुसार, ALTER TABLE के लिए IGNORE क्लॉज को हटा दिया जाता है और इसके उपयोग में त्रुटि उत्पन्न होती है।
इसलिए, पहले सुनिश्चित करें कि डुप्लिकेट प्रविष्टियों को हटा दें क्योंकि IGNORE कीवर्ड अब समर्थित नहीं है।
ALTER
।
ALTER IGNORE
अभी भी आपके डेटा की सुरक्षा के लिए MySQL संस्करण> 5.5 और InnoDB पर डुप्लिकेट त्रुटि दे सकता है। अगर आपको पूरा यकीन है कि डुप्लिकेट पंक्तियों में से पहला रखना सही बात है, तो कोशिश करें set session old_alter_table=1
। इसे वापस सेट करने के लिए मत भूलना। mysqlolyk.wordpress.com/2012/02/18/…
इस क्वेरी को अपने db phpmyadmin में लिखें।
ALTER TABLE TableName ADD UNIQUE (FieldName)
उदाहरण के लिए: ALTER TABLE user ADD UNIQUE (email)
यदि आप भी बाधा का नाम देना चाहते हैं, तो इसका उपयोग करें:
ALTER TABLE myTable
ADD CONSTRAINT constraintName
UNIQUE (columnName);
CREATE UNIQUE INDEX foo ON table_name (field_name)
आपको उस sql को निष्पादित करने से पहले उस कॉलम पर डुप्लिकेट मानों को निकालना होगा। उस कॉलम पर कोई भी मौजूदा डुप्लिकेट मान आपको mysql त्रुटि 1062 तक ले जाएगा
ALTER IGNORE TABLE mytbl ADD UNIQUE (columnName);
सही उत्तर है
सम्मिलित भाग
INSERT IGNORE INTO mytable ....
यह कोड मौजूदा तालिका के लिए अद्वितीय कुंजी सेट करने के लिए हमारी समस्या को हल करने के लिए है
alter ignore table ioni_groups add unique (group_name);
If IGNORE is specified, only the first row is used of rows with duplicates on a unique key, The other conflicting rows are deleted.
डॉक्स