MySQL-এ বিদ্যমান কলামে NOT NULL কনস্ট্রেইন্ট যোগ করতে ALTER কমান্ড ব্যবহার করা হয়। এটি একটি ভ্যালিডেশন যা ইউজারকে NULL মান দিতে বাধা দেয়।
উদাহরণ দেখি। প্রথমে একটি টেবিল তৈরি করব।
mysql> create table AddNotNullDemo -> ( -> name varchar(100) -> ); Query OK, 0 rows affected (0.44 sec)
রেকর্ড ইনসার্ট:
mysql> insert into AddNotNullDemo values('John');
Query OK, 1 row affected (0.19 sec)
mysql> insert into AddNotNullDemo values('Bob');
Query OK, 1 row affected (0.19 sec)
সকল রেকর্ড দেখুন:
mysql> select *from AddNotNullDemo;
আউটপুট:
+------+ | name | +------+ | John | | Bob | +------+ 2 rows in set (0.00 sec)
NOT NULL কনস্ট্রেইন্ট যোগ করার সিনট্যাক্স
ALTER TABLE yourTableName MODIFY column_name data_type CONSTRAINT;
প্রয়োগ (NOT NULL কনস্ট্রেইন্ট যোগ):
mysql> ALTER TABLE AddNotNullDemo MODIFY name varchar(100) NOT NULL; Query OK, 0 rows affected (1.14 sec) Records: 0 Duplicates: 0 Warnings: 0
এখন NULL মান ইনসার্ট করলে এরর হবে:
mysql> INSERT INTO AddNotNullDemo VALUES(NULL); ERROR 1048 (23000): Column 'name' cannot be null
সকল রেকর্ড দেখুন:
mysql> SELECT *FROM AddNotNullDemo;
আউটপুট:
+------+ | name | +------+ | John | | Bob | +------+ 2 rows in set (0.00 sec)
সতর্কতা: কলামে ইতিমধ্যে NULL মান থাকলে MODIFY ... NOT NULL এক্সিকিউট হবে না। প্রথমে NULL মানগুলো আপডেট করে নন-নাল মান দিয়ে দিন।