Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธีโคลน/คัดลอกตารางพร้อมข้อมูล Trigger และ Index ใน MySQL

ต้องรัน 2 คำสั่ง:

CREATE TABLE new_table LIKE old_table;
INSERT new_table SELECT * FROM old_table;

ตัวอย่างสมบูรณ์

mysql> CREATE TABLE employee(ID INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20));
mysql> INSERT INTO employee(name) VALUES('Gaurav'),('Raman');
mysql> SELECT * FROM employee;
+----+--------+
| ID | NAME   |
+----+--------+
| 1  | Gaurav |
| 2  | Raman  |
+----+--------+

mysql> CREATE TABLE employee1 LIKE employee;
Query OK, 0 rows affected (0.19 sec)

mysql> INSERT INTO employee1 SELECT * FROM employee;
Query OK, 2 rows affected (0.09 sec)

mysql> SELECT * FROM employee1;
+----+--------+
| ID | NAME   |
+----+--------+
| 1  | Gaurav |
| 2  | Raman  |
+----+--------+

วิธีนี้คัดลอก: โครงสร้าง, ข้อมูล, Index, Trigger, AUTO_INCREMENT ทั้งหมด (แต่ไม่รวม View, Stored Procedure, Foreign Key constraints บางกรณี)