CREATE TEMPORARY TABLE ... LIKE से संरचना कॉपी करना
एक मौजूदा टेबल की संरचना (कॉलम, इंडेक्स, कंस्ट्रेंट) के समान अस्थायी टेबल बनाने के लिए CREATE TEMPORARY TABLE new_table LIKE existing_table का उपयोग करें।
मूल टेबल बनाना
mysql> CREATE TABLE DemoTable1 (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(100)
);
Query OK, 0 rows affected (0.59 sec)
mysql> INSERT INTO DemoTable1(Name) VALUES('Chris');
Query OK, 1 row affected (0.10 sec)
mysql> INSERT INTO DemoTable1(Name) VALUES('Robert');
Query OK, 1 row affected (0.19 sec)
mysql> INSERT INTO DemoTable1(Name) VALUES('Mike');
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable1(Name) VALUES('Sam');
Query OK, 1 row affected (0.07 sec)
मूल टेबल के रिकॉर्ड
mysql> SELECT * FROM DemoTable1;
+----+--------+ | Id | Name | +----+--------+ | 1 | Chris | | 2 | Robert | | 3 | Mike | | 4 | Sam | +----+--------+ 4 rows in set (0.00 sec)
LIKE से अस्थायी टेबल बनाना
mysql> CREATE TEMPORARY TABLE DemoTable2 LIKE DemoTable1; Query OK, 0 rows affected (0.04 sec)
अस्थायी टेबल का विवरण
mysql> DESC DemoTable2;
+-------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | Name | varchar(100) | YES | | NULL | NULL | +-------+--------------+------+-----+---------+----------------+ 2 rows in set (0.04 sec)
महत्वपूर्ण विशेषताएं:
- संरचना समान होती है (कॉलम, प्रकार, इंडेक्स, AUTO_INCREMENT)
- डेटा कॉपी नहीं होता (खाली टेबल बनती है)
- अस्थायी टेबल केवल वर्तमान सत्र के लिए दृश्यमान होती है
- सत्र समाप्त होने पर स्वचालित रूप से ड्रॉप हो जाती है
DROP TEMPORARY TABLEसे मैन्युअली भी ड्रॉप कर सकते हैं
डेटा भी कॉपी करने के लिए: CREATE TEMPORARY TABLE DemoTable2 SELECT * FROM DemoTable1; (लेकिन इंडेक्स/कंस्ट्रेंट कॉपी नहीं होंगे)।