একটি MySQL টেবিল থেকে UNIQUE সীমাবদ্ধতা বাদ দেওয়ার জন্য, প্রথমত, আমাদের টেবিলে UNIQUE সীমাবদ্ধতা দ্বারা তৈরি সূচকের নাম পরীক্ষা করতে হবে। আমরা জানি যে এই উদ্দেশ্যে SHOW INDEX স্টেটমেন্ট ব্যবহার করা হয়। কী_নাম ' শো ইনডেক্স স্টেটমেন্টের ফলাফল সেটে ইনডেক্সের নাম থাকে। এখন হয় ড্রপ ইনডেক্স এর সাহায্যে বিবৃতি বা সারণী পরিবর্তন করুন বিবৃতি, আমরা অনন্য সীমাবদ্ধতা ড্রপ করতে পারেন. উভয় স্টেটমেন্টের সিনট্যাক্স নিম্নরূপ −
সিনট্যাক্স
DROP INDEX index_name ON table_name; OR ALTER TABLE table_name DROP INDEX index_name;
উদাহরণ
ধরুন আমাদের টেবিলটি 'empl' রয়েছে যার কলাম 'empno'-এ একটি অনন্য সীমাবদ্ধতা রয়েছে। সূচকের নামটি নিম্নরূপ চেক করা যেতে পারে -
mysql> Show Index from empl\G *************************** 1. row *************************** Table: empl Non_unique: 0 Key_name: empno Seq_in_index: 1 Column_name: empno Collation: A Cardinality: 0 Sub_part: NULL Packed: NULL Null: YES Index_type: BTREE Comment: Index_comment: 1 row in set (0.02 sec)
এখন অনন্য সীমাবদ্ধতা বাদ দেওয়ার জন্য, আমরা নিম্নলিখিত প্রশ্নটি লিখতে পারি -
mysql> ALTER TABLE empl DROP INDEX empno; Query OK, 0 rows affected (0.26 sec) Records: 0 Duplicates: 0 Warnings: 0
নীচের ক্যোয়ারীটির ফলাফল সেট দেখাবে যে কলাম 'empno' -
-এ কোন অনন্য সীমাবদ্ধতা নেইmysql> describe empl; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | empno | int(11) | YES | | NULL | | | F_name | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 2 rows in set (0.04 sec)
এমনকি যদি আমরা empl থেকে INDEX দেখান চালাই ক্যোয়ারী তাহলে MySQL এর ফলে নিচের মত একটি খালি সেট তৈরি হবে −
mysql> Show index from empl; Empty set (0.00 sec)
নিম্নরূপ ড্রপ ইনডেক্স স্টেটমেন্টের সাহায্যে 'empl' টেবিল থেকে অনন্য সীমাবদ্ধতা বাদ দেওয়া যেতে পারে -
mysql> DROP INDEX empno on empl; Query OK, 0 rows affected (0.17 sec) Records: 0 Duplicates: 0 Warnings: 0