Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk mengklon/menyalin jadual dan data, pencetus dan indeksnya?

Bagaimana untuk mengklon/menyalin jadual dan data, pencetus dan indeksnya?

王林
王林ke hadapan
2023-08-26 11:29:02586semak imbas

Bagaimana untuk mengklon/menyalin jadual dan data, pencetus dan indeksnya?

Untuk membuat jadual baharu dengan data, pencetus dan indeksnya seperti jadual lama, kita perlu menjalankan dua pertanyaan berikut

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

Contoh

mysql> Create table employee(ID INT PRIMARY KEY NOT NULL AUTO_INCREMENT, NAME VARCHAR(20));
Query OK, 0 rows affected (0.21 sec)

mysql> Describe employee;
+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| ID    | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME  | varchar(20) | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+
2 rows in set (0.07 sec)

mysql> Insert into employee(name) values('Gaurav'),('Raman');
Query OK, 2 rows affected (0.07 sec)
Records: 2 Duplicates: 0 Warnings: 0

mysql> Select * from employee;
+----+--------+
| ID | NAME   |
+----+--------+
| 1  | Gaurav |
| 2  | Raman  |
+----+--------+
2 rows in set (0.00 sec)

Pertanyaan berikut akan mencipta jadual dengan struktur yang serupa dengan pekerja pekerja meja1. Anda boleh menyemak ini dengan menjalankan pertanyaan DESCRIBE.

mysql> create table employee1 like employee;
Query OK, 0 rows affected (0.19 sec)

mysql> describe employee1;
+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| ID    | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME  | varchar(20) | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+
2 rows in set (0.14 sec)

Sekarang pertanyaan berikut akan memasukkan nilai yang sama dalam employee1 seperti dalam pekerja yang boleh disemak seperti berikut

mysql> INSERT INTO employee1 select * from employee;
Query OK, 2 rows affected (0.09 sec)
Records: 2 Duplicates: 0 Warnings: 0

mysql> select * from employee1;
+----+--------+
| ID | NAME   |
+----+--------+
| 1  | Gaurav |
| 2  | Raman  |
+----+--------+
2 rows in set (0.00 sec)

Dengan cara ini kita juga boleh mengklonkan jadual bersama dengan data, pencetus dan indeksnya.

Atas ialah kandungan terperinci Bagaimana untuk mengklon/menyalin jadual dan data, pencetus dan indeksnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam