MySQL-এ কোনো কলামের জন্য ডিফল্ট মান সেট করতে DEFAULT কিওয়ার্ড ব্যবহার করা হয়।
উদাহরণ: টেবিল তৈরি এবং ডিফল্ট মান যোগ করা
প্রথমে একটি টেবিল তৈরি করি:
mysql> create table DemoTable758 (
Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
FirstName varchar(100)
);
Query OK, 0 rows affected (0.66 sec)
এখন ALTER TABLE ব্যবহার করে Colors নামে একটি ENUM কলাম যোগ করি যার ডিফল্ট মান 'YELLOW':
mysql> alter table DemoTable758 add column Colors ENUM('RED','GREEN','BLUE','ORANGE','YELLOW') DEFAULT 'YELLOW';
Query OK, 0 rows affected (0.44 sec)
Records: 0 Duplicates: 0 Warnings: 0
টেবিলের কাঠামো যাচাই করা
mysql> desc DemoTable758;
আউটপুটে দেখতে পাবেন Colors কলামের ডিফল্ট মান 'YELLOW' সেট হয়ে গেছে:
+-----------+----------------------------------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+----------------------------------------------+------+-----+---------+----------------+
| Id | int(11) | NO | PRI | NULL | auto_increment |
| FirstName | varchar(100) | YES | | NULL | |
| Colors | enum('RED','GREEN','BLUE','ORANGE','YELLOW') | YES | | YELLOW | |
+-----------+----------------------------------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
ডিফল্ট মান কাজ করছে কিনা তা পরীক্ষা
রেকর্ড ইনসার্ট করার সময় Colors মান না দিলে ডিফল্টভাবে 'YELLOW' সেট হবে:
mysql> insert into DemoTable758(FirstName) values('John');
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable758(FirstName,Colors) values('Carol','RED');
Query OK, 1 row affected (0.17 sec)
mysql> select * from DemoTable758;
+----+-----------+--------+ | Id | FirstName | Colors | +----+-----------+--------+ | 1 | John | YELLOW | | 2 | Carol | RED | +----+-----------+--------+ 2 rows in set (0.00 sec)
সারসংক্ষেপ: DEFAULT কিওয়ার্ড দিয়ে কলাম ডিফল্ট মান নির্ধারণ করা যায়, যা ইনসার্টের সময় মান না দিলে স্বয়ংক্রিয়ভাবে 적용 হয়।