MySQL ENUM-এ খালি মান তখনই গ্রহণ করে যখন SQL mode TRADITIONAL, STRICT_TRANS_TABLES বা STRICT_ALL_TABLES নয়। অন্যথায় এরর থ্রো করে। প্রতিটি এনুমারেশন মানের একটি সূচক মান থাকে, খালি মানের সূচক ০।
উদাহরণ
mysql> SET SQL_MODE = 'Traditional'; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO result(id, name, grade) VALUES(100, 'Raman', ''); ERROR 1265 (01000): Data truncated for column 'Grade' at row 1
SQL mode পরিবর্তন করলে খালি স্ট্রিং ইনসার্ট করা যায়:
mysql> SET SQL_MODE = ''; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO result(id, name, grade) VALUES(100, 'Raman', ''); Query OK, 1 row affected, 1 warning (0.04 sec) mysql> SELECT * FROM result; +-----+-------+-------+ | Id | Name | Grade | +-----+-------+-------+ | 100 | Raman | | +-----+-------+-------+ 1 row in set (0.00 sec)
MySQL ENUM-এ NULL মান গ্রহণ করে যদি ENUM কলামের সাথে NOT NULL নির্দিষ্ট না করা হয়। NULL-এর সূচক মান NULL।
উদাহরণ
mysql> INSERT INTO result(id, name, grade) VALUES(101, 'Rahul', NULL); Query OK, 1 row affected (0.04 sec)
উপরের কোয়েরি NULL ইনসার্ট করেছে কারণ ENUM কলাম ডিক্লারেশনে NOT NULL নেই।
mysql> SELECT * FROM result; +-----+-------+-------+ | Id | Name | Grade | +-----+-------+-------+ | 100 | Raman | | | 101 | Rahul | NULL | +-----+-------+-------+ 2 rows in set (0.00 sec)