কম্পিউটার

মাইএসকিউএল-এ ডুপ্লিকেট সারি সন্নিবেশ করা এড়াতে কিভাবে?


MySQL-এ ডুপ্লিকেট সারি ঢোকানো এড়াতে, আপনি UNIQUE() ব্যবহার করতে পারেন। সিনট্যাক্স নিম্নরূপ -

ALTER TABLE yourTableName ADD UNIQUE(yourColumnName1,yourColumnName2,...N);

উপরের সিনট্যাক্স বুঝতে, আসুন একটি টেবিল তৈরি করি।

একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -

mysql> create table avoidInsertingDuplicateRows
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> FirstValue int,
   -> SecondValue int
   -> );
Query OK, 0 rows affected (0.53 sec)

এখন desc কমান্ড ব্যবহার করে টেবিলের বিবরণ পরীক্ষা করুন।

প্রশ্নটি নিম্নরূপ -

mysql> desc avoidInsertingDuplicateRows;

নিচের নমুনা হল আউটপুট −

+-------------+---------+------+-----+---------+----------------+
| Field       | Type    | Null | Key | Default | Extra          |
+-------------+---------+------+-----+---------+----------------+
| Id          | int(11) | NO   | PRI | NULL    | auto_increment |
| FirstValue  | int(11) | YES  |     | NULL    |                |
| SecondValue | int(11) | YES  |     | NULL    |                |
+-------------+---------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

মাইএসকিউএল-এ ডুপ্লিকেট সারি ঢোকানো এড়াতে এখানে ক্যোয়ারী রয়েছে। আমরা সারণিতে রেকর্ড সন্নিবেশ করার জন্য সন্নিবেশ কমান্ড দিয়ে সেট করব −

mysql> insert into avoidInsertingDuplicateRows(FirstValue,SecondValue) values(10,20);
Query OK, 1 row affected (0.24 sec)
mysql> insert into avoidInsertingDuplicateRows(FirstValue,SecondValue) values(10,20);
ERROR 1062 (23000): Duplicate entry '10-20' for key 'FirstValue'

সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন।

প্রশ্নটি নিম্নরূপ -

mysql> select *from avoidInsertingDuplicateRows;

এখানে আউটপুট −

+----+------------+-------------+
| Id | FirstValue | SecondValue |
+----+------------+-------------+
| 1  | 10         | 20          |
+----+------------+-------------+
1 row in set (0.00 sec)

  1. কিভাবে MySQL থেকে শেষ 10 সারি নির্বাচন করবেন?

  2. শর্ত সহ একটি MySQL টেবিলের সারি প্রতিস্থাপন কিভাবে?

  3. MySQL (যৌগিক কী) এ সদৃশ সারি খুঁজছেন?

  4. কিভাবে একটি MySQL টেবিলে শুধুমাত্র 3টি অর্ডার করা সারি নির্বাচন করবেন?