এজন্য INFORMATION_SCHEMA.COLUMNS ব্যবহার করা যায়। প্রথমে একটি টেবিল তৈরি করি:
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(20)
);
রেকর্ড যোগ করি:
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
mysql> INSERT INTO DemoTable(Name) VALUES('Robert');
mysql> INSERT INTO DemoTable(Name) VALUES('Sam');
সকল রেকর্ড দেখতে:
mysql> SELECT * FROM DemoTable;
আউটপুট:
+----+--------+ | Id | Name | +----+--------+ | 1 | Chris | | 2 | Robert | | 3 | Sam | +----+--------+
ডেটা টাইপ এবং ডেটা মান একসাথে দেখানোর কোয়েরি:
mysql> SELECT DemoTable.Name, col1.DATA_TYPE FROM DemoTable, INFORMATION_SCHEMA.COLUMNS col1 WHERE col1.TABLE_NAME='DemoTable' AND COLUMN_NAME='Name';
আউটপুট:
+--------+-----------+ | Name | DATA_TYPE | +--------+-----------+ | Chris | varchar | | Robert | varchar | | Sam | varchar | +--------+-----------+
ব্যাখ্যা: INFORMATION_SCHEMA.COLUMNS টেবিলে ডেটাবেসের সকল কলামের মেটাডেটা থাকে। এখানে ক্রস জয়েন (Cartesian product) হয়েছে, তাই প্রতিটি সারির সাথে ডেটা টাইপ রিপিট হয়েছে। বাস্তবে এটি মেটাডেটা কোয়েরির উদাহরণ।
বेहতর পদ্ধতি: শুধু কলামের নাম ও টাইপ জানতে চাইলে DESC DemoTable; বা SHOW COLUMNS FROM DemoTable; ব্যবহার করুন।