MySQL-এ Boolean এবং TINYINT(1): একই জিনিসপত্র
MySQL-এ BOOLEAN বা BOOL ডেটা টাইপ আসলে TINYINT(1)-এর সিনোনিম (সমার্থক)। внутрен্নে MySQL এগুলোকে TINYINT(1)-এ কনভার্ট করে দেয়। তাই কোনো ফাংশনাল পার্থক্য নেই।
উদাহরণ
টেবিল তৈরি:
CREATE TABLE DemoTable (
isMarried BOOLEAN
);
টেবিল কাঠামো যাচাই:
DESC DemoTable;
আউটপুট:
+-----------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------+------+-----+---------+-------+
| isMarried | tinyint(1) | YES | | NULL | |
+-----------+------------+------+-----+---------+-------+
দেখুন: BOOLEAN ঘোষণা করলেও টাইপ দেখাচ্ছে tinyint(1)।
ডেটা ইনসার্ট এবং রিড
INSERT INTO DemoTable VALUES (TRUE), (FALSE);
SELECT * FROM DemoTable;
আউটপুট:
+-----------+
| isMarried |
+-----------+
| 1 |
| 0 |
+-----------+
মূল বাতসমূহ
TRUE= ১,FALSE= ০ (কেস-ইনসেনসিটিভ)।- স্টোরেজ: ১ বাইট (TINYINT)۔
- ইন্ডেক্সিং এবং কোয়ারি পারফরম্যান্সে কোনো পার্থক্য নেই।
BOOLEANব্যবহার করলে কোডের পঠনযোগ্যতা বাড়ে।
নোট: অন্যান্য ডাটাবেস (যেমন PostgreSQL) এ আসল Boolean টাইপ থাকে, কিন্তু MySQL-এ এটি সিনোনিম মাত্র।