MySQL টেবিলে প্রয়োগ করা PRIMARY KEY, FOREIGN KEY, UNIQUE ইত্যাদি কনস্ট্রেইন্ট দেখার দুটি সহজ পদ্ধতি রয়েছে।
পদ্ধতি ১: SHOW CREATE TABLE
SHOW CREATE TABLE yourTableName;
এটি টেবিল তৈরির পুরো SQL দেখায়, যেখানে সব কনস্ট্রেইন্ট স্পষ্ট থাকে।
পদ্ধতি ২: INFORMATION_SCHEMA.KEY_COLUMN_USAGE
SELECT COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_COLUMN_NAME, REFERENCED_TABLE_NAME FROM information_schema.KEY_COLUMN_USAGE WHERE TABLE_NAME = 'yourTableName';
উদাহরণ আউটপুট
mysql> SELECT COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_COLUMN_NAME, REFERENCED_TABLE_NAME
-> FROM information_schema.KEY_COLUMN_USAGE
-> WHERE TABLE_NAME = 'ConstraintDemo';
+-------------+-----------------+------------------------+-----------------------+
| COLUMN_NAME | CONSTRAINT_NAME | REFERENCED_COLUMN_NAME | REFERENCED_TABLE_NAME |
+-------------+-----------------+------------------------+-----------------------+
| Id | PRIMARY | NULL | NULL |
| Id | Id | NULL | NULL |
+-------------+-----------------+------------------------+-----------------------+
mysql> SHOW CREATE TABLE ConstraintDemo;
+----------------+------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------------+------------------------------------------------------------------------------------------------------------------------------------+
| ConstraintDemo | CREATE TABLE `constraintdemo` (`Id` int(11) NOT NULL, `Name` varchar(100) NOT NULL, PRIMARY KEY (`Id`), UNIQUE KEY `Id` (`Id`) ) ... |
+----------------+------------------------------------------------------------------------------------------------------------------------------------+
সামঞ্জস: `SHOW CREATE TABLE` দ্রুত ও সম্পূর্ণ ধারণা দেয়; `INFORMATION_SCHEMA` প্রোগ্রাম্যাটিক্যালি কনস্ট্রেইন্ট মেটাডেটা পেতে উপযোগী।