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

MySQL-এ NULL অনুমতি দিয়ে ডিফল্ট খালি স্ট্রিং সেট করা

একটি কলামে NULL অনুমতি দিয়ে ডিফল্ট মান খালি স্ট্রিং ('') সেট করতে DEFAULT কীওয়ার্ড ব্যবহার করুন।

সিনট্যাক্স

ALTER TABLE yourTableName 
ADD yourColumnName yourDataType NULL DEFAULT '';

উদাহরণ দিয়ে বুঝি

টেবিল তৈরি করুন:

mysql> CREATE TABLE AllowNullDefaulNotNullDemo (
    -> Id INT NOT NULL AUTO_INCREMENT,
    -> UserName VARCHAR(20),
    -> PRIMARY KEY(Id)
    -> );
Query OK, 0 rows affected (0.65 sec)

নতুন কলাম যোগ করুন (NULL অনুমতি, ডিফল্ট খালি স্ট্রিং)

mysql> ALTER TABLE AllowNullDefaulNotNullDemo 
    -> ADD UserAddress VARCHAR(20) NULL DEFAULT '';
Query OK, 0 rows affected (1.04 sec)

টেবিল স্ট্রাকচার চেক করুন:

mysql> DESC AllowNullDefaulNotNullDemo;
+-------------+-------------+------+-----+---------+----------------+
| Field       | Type        | Null | Key | Default | Extra          |
+-------------+-------------+------+-----+---------+----------------+
| Id          | int(11)     | NO   | PRI | NULL    | auto_increment |
| UserName    | varchar(20) | YES  |     | NULL    |                |
| UserAddress | varchar(20) | YES  |     |         |                |
+-------------+-------------+------+-----+---------+----------------+
3 rows in set (0.17 sec)

Default কলামে খালি মান ('') দেখা যাচ্ছে, Null কলামে YES।

রেকর্ড ইনসার্ট করুন

mysql> INSERT INTO AllowNullDefaulNotNullDemo(UserAddress) VALUES('US');
mysql> INSERT INTO AllowNullDefaulNotNullDemo(UserAddress) VALUES(NULL);
mysql> INSERT INTO AllowNullDefaulNotNullDemo() VALUES();

UserAddress কলাম চেক করুন:

mysql> SELECT UserAddress FROM AllowNullDefaulNotNullDemo;
+-------------+
| UserAddress |
+-------------+
| US          |
| NULL        | 
|             |
+-------------+
3 rows in set (0.00 sec)

ব্যাখ্যা:

  • ১ম রো: স্পষ্টভাবে 'US' দেওয়া হয়েছে
  • ২য় রো: স্পষ্টভাবে NULL দেওয়া হয়েছে (NULL অনুমতিত)
  • ৩য় রো: কোনো মান না দেওয়ায় ডিফল্ট খালি স্ট্রিং ('') সেট হয়েছে

সতর্কতা: NULL এবং '' (খালি স্ট্রিং) ভিন্ন জিনিস। IS NULL চেক করলে ২য় রো ম্যাচ করবে, ৩য় রো না।

  1. MySQL-এ কলামকে NOT NULL ডিফাইন করা যাতে সেটি খালি (NULL) না থাকে

  2. MySQL-এ IF() ফাংশন দিয়ে NOT NULL মান માટે ১ এবং NULL জন্য ০ দেখানো

  3. MySQL-এ ALTER TABLE MODIFY দিয়ে বিদ্যমান কলামে NOT NULL অ্যাট্রিবিউট সেট করা

  4. MySQL-এ JSON টাইপ কলামে ডিফল্ট ভ্যালু সেট করা