DEFAULT NULL অন্তর্ভুক্ত না করলেও কলামে NULL সেভ হয়
MySQL-এ কলাম ডেফিনিশনে DEFAULT NULL লিখতে হয় না। ডিফল্টভাবেই সব কলাম (NOT NULL না হলে) NULL গ্রহণ করে। মান না দিয়ে INSERT করলে অটোমেটিক NULL সেভ হয়।
টেবিল (DEFAULT NULL ছাড়া)
mysql> CREATE TABLE DemoTable (FirstName VARCHAR(100));
ডেটা ইনসার্ট (মান না দিয়ে)
mysql> INSERT INTO DemoTable VALUES('Chris');
mysql> INSERT INTO DemoTable VALUES(); -- মান নেই
mysql> INSERT INTO DemoTable VALUES(); -- মান নেই
mysql> INSERT INTO DemoTable VALUES('David');
ফলাফল
+-----------+ | FirstName | +-----------+ | Chris | | NULL | | NULL | | David | +-----------+
ব্যাখ্যা
INSERT INTO DemoTable VALUES()— কলাম লিস্ট না দিলে সব কলামে ডিফল্ট মান (NULL) ইনসার্ট হয়।DEFAULT NULLস্পষ্টভাবে লিখলেও একই ফলাফল, লিখলেও একই ফলাফল।NOT NULLকনস্ট্রেইন্ট দিলে NULL ইনসার্ট করলে এরর দেবে।
সেরা অনুশীলন
- স্পষ্টতায়
DEFAULT NULLলিখা যেতে পারে (ডকুমেন্টেশনের জন্য)। - যদি ডিফল্ট মান নির্দিষ্ট করতে চান:
DEFAULT 'unknown'বাDEFAULT 0। DEFAULT CURRENT_TIMESTAMP(TIMESTAMP/DATETIME কলামের জন্য)।