MySQL में CREATE TABLE ... LIKE का उपयोग करके मौजूदा टेबल की संरचना कॉपी करें, फिर INSERT ... SELECT से डेटा कॉपी करें।
चरण 1: केवल संरचना कॉपी करना
CREATE TABLE yourNewTableName LIKE yourOldTableName;
चरण 2: डेटा कॉपी करना
INSERT INTO yourNewTableName SELECT * FROM yourOldTableName;
पूर्ण उदाहरण
मूल टेबल बनाना
mysql> create table WholeWordMatchDemo ( -> Words varchar(200) -> ); Query OK, 0 rows affected (0.84 sec)
नई टेबल की संरचना बनाना
mysql> create table NewTableDuplicate LIKE WholeWordMatchDemo; Query OK, 0 rows affected (0.62 sec)
संरचना जांचना
mysql> show create table NewTableDuplicate;
+-------------------+--------------------------------------------------------------------------------+ | Table | Create Table | +-------------------+--------------------------------------------------------------------------------+ | NewTableDuplicate | CREATE TABLE `newtableduplicate` (`Words` varchar(200) DEFAULT NULL) ... | +-------------------+--------------------------------------------------------------------------------+
डेटा कॉपी करना
mysql> insert into NewTableDuplicate select *from WholeWordMatchDemo; Query OK, 3 rows affected (0.19 sec)
दोनों टेबल की तुलना
mysql> select *from NewTableDuplicate; mysql> select *from WholeWordMatchDemo;
+----------------------+ +----------------------+ | Words | | Words | +----------------------+ +----------------------+ | My Name is John | | My Name is John | | Carol | | Carol | | My Name is Johnson | | My Name is Johnson | +----------------------+ +----------------------+
महत्वपूर्ण बिंदु
LIKEकेवल संरचना कॉपी करता है: कॉलम, डेटा प्रकार, इंडेक्स, कंस्ट्रेंटLIKEडेटा, ट्रिगर, पार्टीशन, या फॉरेन की कॉपी नहीं करताINSERT ... SELECTडेटा कॉपी करता है- दोनों टेबल स्वतंत्र हैं — एक में बदलाव दूसरे को प्रभावित नहीं करता
एक क्वेरी में संरचना + डेटा (CREATE TABLE ... AS SELECT)
CREATE TABLE NewTable AS SELECT * FROM OldTable;
यह इंडेक्स और कंस्ट्रेंट नहीं कॉपी करता, केवल कॉलम और डेटा कॉपी करता है।