কম্পিউটার টিউটোরিয়াল

MySQL-এ ALTER TABLE ব্যবহার করে একক কোয়েরিতে কলাম এবং ইনডেক্স যোগ করা

MySQL-এ ALTER TABLE স্টেটমেন্টে একাধিক ADD ক্লজ কমা দিয়ে আলাদা করে একক কোয়েরিতে কলাম এবং ইনডেক্স যোগ করা যায়।

টেবিল তৈরি

mysql> CREATE TABLE DemoTable (
    -> Id INT NOT NULL AUTO_INCREMENT,
    -> Name VARCHAR(100),
    -> PRIMARY KEY(Id)
    -> );
Query OK, 0 rows affected (0.69 sec)

টেবিল ডেসক্রিপশন (পূর্বে)

mysql> DESC DemoTable;
+-------+--------------+------+-----+---------+----------------+
| Field | Type         | Null | Key | Default | Extra          |
+-------+--------------+------+-----+---------+----------------+
| Id    | int(11)      | NO   | PRI | NULL    | auto_increment |
| Name  | varchar(100) | YES  |     | NULL    |                |
+-------+--------------+------+-----+---------+----------------+
2 rows in set (0.01 sec)

ArrivalDate কলাম এবং ইনডেক্স যোগ করা

mysql> ALTER TABLE DemoTable
    -> ADD ArrivalDate DATETIME DEFAULT CURRENT_TIMESTAMP,
    -> ADD INDEX(ArrivalDate);
Query OK, 0 rows affected (2.05 sec)
Records: 0 Duplicates: 0 Warnings: 0

টেবিল ডেসক্রিপশন (পরে)

mysql> DESC DemoTable;

আউটপুট

+-------------+--------------+------+-----+-------------------+----------------+
| Field       | Type         | Null | Key | Default           | Extra          |
+-------------+--------------+------+-----+-------------------+----------------+
| Id          | int(11)      | NO   | PRI | NULL              | auto_increment |
| Name        | varchar(100) | YES  |     | NULL              |                |
| ArrivalDate | datetime     | YES  | MUL | CURRENT_TIMESTAMP |                |
+-------------+--------------+------+-----+-------------------+----------------+
3 rows in set (0.01 sec)

ব্যাখ্যা:

  • ADD ArrivalDate DATETIME DEFAULT CURRENT_TIMESTAMP — নতুন কলাম যোগ, ডিফল্ট মান বর্তমান টাইমস্ট্যাম্প।
  • ADD INDEX(ArrivalDate) — সেই কলামে নন-ইউনিক ইনডেক্স (MUL) তৈরি।
  • একই ALTER TABLE-এ কমা দিয়ে একাধিক অপারেশন করা যায় (এটোমিক অপারেশন)।
  • Key কলামে MUL মানে নন-ইউনিক ইনডেক্স।

অন্যান্য ADD অপশন: ADD PRIMARY KEY, ADD UNIQUE INDEX, ADD FOREIGN KEY, ADD COLUMN ... FIRST/AFTER col।

  1. MySQL-এ একক কোয়েরিতে তারিখে এক বছর এবং দুটি দিন যোগ করা

  2. MySQL-এ একক কোয়েরি দিয়ে সকল কলামের নাম ছোট হাতের অক্ষরে রূপান্তর করা

  3. MySQL-এ IN() অপারেটর দিয়ে একক কোয়েরিতে একাধিক রেকর্ড ডিলিট করা

  4. MySQL-এ DATE_ADD দিয়ে ৪৫ দিন যোগ করে নতুন কলামে দেখানো