Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में मौजूदा टेबल जैसी नई टेबल कैसे बनाएं?


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;

यह इंडेक्स और कंस्ट्रेंट नहीं कॉपी करता, केवल कॉलम और डेटा कॉपी करता है।


  1. - MySQL में JOIN और UPDATE से दूसरी टेबल के कॉलम मान के आधार पर कॉलम अपडेट करें

    MySQL में UPDATE ... JOIN सिंटैक्स का उपयोग करके एक टेबल के कॉलम को दूसरी टेबल के संबंधित कॉलम मान के आधार पर अपडेट कर सकते हैं। यह डेटा सिंक्रनाइज़ेशन, माइग्रेशन, और संदर्भ डेटा लागू करने के लिए मानक पैटर्न है। सिंटैक्स UPDATE target_table t1 JOIN source_table t2 ON t1.join_col = t2.join_col SET t

  1. - MySQL में CREATE TEMPORARY TABLE से अस्थायी टेबल बनाएं

    MySQL में CREATE TEMPORARY TABLE स्टेटमेंट सत्र-विशिष्ट (session-specific) अस्थायी टेबल बनाता है। यह कनेक्शन बंद होने पर स्वचालित रूप से ड्रॉप हो जाती है। सिंटैक्स CREATE TEMPORARY TABLE टेबल_नाम ( कॉलम_नाम डेटा_टाइप ); उदाहरण: दिनांक/समय मान संग्रहीत करना 1. अस्थायी टेबल बनाएं ); 2. विभिन्

  1. - MySQL में इंडेक्स के साथ तालिका कैसे बनाएं?

    MySQL में तालिका निर्माण के बाद CREATE INDEX स्टेटमेंट का उपयोग करके इंडेक्स बनाए जा सकते हैं, या तालिका निर्माण के समय परिभाषित किए जा सकते हैं। विधि 1: तालिका निर्माण के बाद CREATE TABLE table_name ( col1 datatype, col2 datatype ); CREATE INDEX index_name1 ON table_name (col1); CREATE IN