การดูโครงสร้างคอลัมน์ของ Temporary Table
Temporary Table ใน MySQL ใช้ได้เฉพาะ Session ปัจจุบัน สามารถตรวจสอบโครงสร้างได้ด้วย SHOW COLUMNS หรือ DESCRIBE เหมือนตารางปกติ
Syntax
SHOW COLUMNS FROM temp_table_name; -- หรือ DESC temp_table_name;
ตัวอย่าง: สร้าง Temporary Table และแสดงโครงสร้าง
mysql> CREATE TEMPORARY TABLE DemoTable745 (
StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
StudentName VARCHAR(100),
StudentAge INT,
StudentAddress VARCHAR(100),
StudentCountryName VARCHAR(20)
);
Query OK, 0 rows affected (0.00 sec)
แสดงโครงสร้างคอลัมน์:
mysql> SHOW COLUMNS FROM DemoTable745;
+--------------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------------+--------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentName | varchar(100) | YES | | NULL | NULL | | StudentAge | int(11) | YES | | NULL | NULL | | StudentAddress | varchar(100) | YES | | NULL | NULL | | StudentCountryName | varchar(20) | YES | | NULL | NULL | +--------------------+--------------+------+-----+---------+----------------+ 5 rows in set (0.05 sec)
คุณสมบัติ Temporary Table
- มองเห็นได้ **เฉพาะ Session ที่สร้าง** (Connection อื่นไม่เห็น)
- ถูกลบอัตโนมัติเมื่อ **Session จบ (Disconnect)**
- ชื่อสามารถซ้ำกับ Regular Table ได้ (อยู่ใน Namespace แยก)
- ไม่สามารถอ้างอิงใน Trigger/Stored Procedure ได้ (บาง Version)
- ไม่รองการ Replication (Statement-based)
คำสั่งที่เกี่ยวข้อง
SHOW CREATE TABLE DemoTable745;- ดู DDL StatementSHOW TABLE STATUS LIKE 'DemoTable745';- ดูข้อมูลเช่น Engine, Rows, SizeSELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'DemoTable745' AND TABLE_SCHEMA = DATABASE();
กรณีใช้งานจริง
- เก็บข้อมูลระหว่างคำนวณซับซ้อน (Intermediate Results)
- แบ่ง Query ใหญ่เป็นขั้นตอนๆ
- Staging Data ก่อน Insert ลง Production Table
- Session-specific Data (Shopping Cart, Temp Calculations)