MySQL-এ ENUM কলামের সব সম্ভাব্য মান জানতে INFORMATION_SCHEMA.COLUMNS টেবিল কোয়েরি করুন।
সিনট্যাক্স
SELECT COLUMN_TYPE AS AllPossibleEnumValues FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'yourDatabaseName' AND TABLE_NAME = 'yourTableName' AND COLUMN_NAME = 'yourEnumColumnName';
উদাহরণ
ENUM টেবিল তৈরি:
CREATE TABLE EnumDemo (
Id INT,
Color ENUM('RED', 'GREEN', 'BLUE', 'BLACK', 'ORANGE')
);
কোয়েরি চালান:
SELECT COLUMN_TYPE AS AllPossibleEnumValues FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'sample' AND TABLE_NAME = 'EnumDemo' AND COLUMN_NAME = 'Color';
আউটপুট
+---------------------------------------------+
| AllPossibleEnumValues |
+---------------------------------------------+
| enum('RED','GREEN','BLUE','BLACK','ORANGE') |
+---------------------------------------------+
PHP-এ পার্স করার উদাহরণ
$result = $mysqli->query("SELECT COLUMN_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA='sample' AND TABLE_NAME='EnumDemo' AND COLUMN_NAME='Color'");
$row = $result->fetch_assoc();
$enumStr = $row['COLUMN_TYPE']; // "enum('RED','GREEN','BLUE','BLACK','ORANGE')"
// মানগুলো এক্সট্র্যাক্ট করুন
preg_match_all("/'([^']+)'/", $enumStr, $matches);
$enumValues = $matches[1]; // ['RED', 'GREEN', 'BLUE', 'BLACK', 'ORANGE']
print_r($enumValues);
টিপ: PHP-এ রেজেক্স বা স্ট্রিং ফাংশন দিয়ে ENUM মানগুলো সহজে অ্যারে-তে রূপান্তর করা যায়।