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

NULL মান থাকা কলামে ALTER TABLE দিয়ে NOT NULL প্রয়োগ করলে কী হয়

যদি কোনো কলামে ইতিমধ্যে NULL মান থাকে এবং সেখানে NOT NULL কনস্ট্রেইন্ট প্রয়োগ করতে চান, তবে MySQL ত্রুটি দেবে: Data truncated for column।

উদাহরণ

test2 টেবিলের ২য় সারিতে ID হলো NULL:

mysql> SELECT * FROM test2;
+------+--------+
| ID   | Name   |
+------+--------+
| 1    | Gaurav |
| NULL | Rahul  |
+------+--------+

NOT NULL প্রয়োগের চেষ্টা:

mysql> ALTER TABLE TEST2 MODIFY ID INT NOT NULL;
ERROR 1265 (01000): Data truncated for column 'ID' at row 2

সমাধান: আগে NULL মানগুলো আপডেট করে নন-নাল মান দিন, তারপর কনস্ট্রেইন্ট দিন।

  1. MySQL-এ IS NOT NULL দিয়ে কলামে NULL বা NOT NULL চেক করা

  2. MySQL-এ TIMESTAMP DEFAULT CURRENT_TIMESTAMP কলামে খালি ইনসার্ট করলে কী হয়?

  3. MySQL에서 기존 테이블에 NOT NULL 컬럼 추가하기

  4. MySQL에서 IS NOT NULL로 NULL 제외하고 NOT NULL 값만 다른 테이블로 복사하기