Kopieren eine Tabelle in MySQL

Preet Sanghavi 30 Januar 2023
  1. Tabelle mit der Anweisung CREATE TABLE ... AS SELECT klonen
  2. Tabelle mit Teildaten mit der Klausel WHERE klonen
Kopieren eine Tabelle in MySQL

Dieses Tutorial zielt darauf ab, verschiedene Methoden zum Erstellen einer Kopie einer Tabelle in MySQL zu erkunden.

Die Quelltabelle wird auch als zu kopierende Tabelle bezeichnet, und die Zieltabelle, bekannt als Klontabelle, kann aus derselben oder separaten Datenbanken innerhalb eines MySQL-Servers stammen.

Wir werden die folgenden Methoden untersuchen, um eine Tabelle in MySQL zu kopieren:

  • Tabelle mit der Anweisung CREATE TABLE ... AS SELECT klonen.
  • Tabelle mit Teildaten mit der Klausel WHERE klonen.

Bevor wir beginnen, erstellen wir ein Dummy-Dataset, mit dem wir arbeiten können. Hier erstellen wir eine Tabelle, student_details, zusammen mit einigen Zeilen darin.

-- create the table student_details
CREATE TABLE student_details(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName) 
 VALUES(1,"Preet","Sanghavi"),
 (2,"Rich","John"),
 (3,"Veron","Brow"),
 (4,"Geo","Jos"),
 (5,"Hash","Shah"),
 (6,"Sachin","Parker"),
 (7,"David","Miller");

Die obige Abfrage erstellt eine Tabelle zusammen mit Zeilen mit dem Vor- und Nachnamen des Schülers. Um die Einträge in den Daten einzusehen, verwenden wir folgenden Code:

SELECT * FROM student_details;

Der oben genannte Code würde folgendes Ergebnis liefern:

stu_id	stu_firstName	stu_lastName
1	      Preet	        Sanghavi
2	      Rich	        John
3	      Veron	        Brow
4	      Geo	        Jos
5	      Hash	        Shah
6	      Sachin	    Parker
7	      David	        Miller

Erstellen wir nun eine Kopie der obigen Tabelle mit dem Namen students_data_backup.

Tabelle mit der Anweisung CREATE TABLE ... AS SELECT klonen

Eine der einfachsten Methoden zum Erstellen einer Tabellenkopie ist die Verwendung der Anweisung CREATE TABLE ... AS SELECT. Wir können diese Operation mit dem folgenden Code durchführen:

-- Basic copy table creation
create table students_data_backup as select * from student_details;

Der oben genannte Code erstellt eine Kopiertabelle namens students_data_backup aus der Tabelle student_details, die als Quelltabelle fungiert. Diese neue Tabelle students_data_backup können wir mit folgender Abfrage visualisieren:

select * from students_data_backup;

Die Ausgabe des oben genannten Codes führt zu einer temporären Tabelle wie folgt:

stu_id	stu_firstName	stu_lastName
1	        Preet	      Sanghavi
2	        Rich	      John
3	        Veron	      Brow
4	        Geo	          Jos
5	        Hash	      Shah
6			Sachin		  Parker
7			David	      Miller

Tabelle mit Teildaten mit der Klausel WHERE klonen

Manchmal muss nur ein bestimmter Teil einer bestimmten Datei geklont werden. Wir können die Klausel WHERE und die Anweisung CREATE TABLE ... AS SELECT verwenden, um diese Operation auszuführen.

Versuchen wir, die Tabelle student_details teilweise zu klonen. Wir entscheiden uns, die Tabelle mit nur den Daten der ersten fünf stu_id zu klonen.

Wir können diese Operation mit dem folgenden Code durchführen:

-- Cloning the student_details table with where clause
create table students_data_backup as select * from student_details WHERE stu_id <= 5;

Das angegebene Codebeispiel erzeugt die folgende Ausgabe:

stu_id	stu_firstName	stu_lastName
1	        Preet	      Sanghavi
2	        Rich	      John
3	        Veron	      Brow
4	        Geo	          Jos
5	        Hash	      Shah

Wie wir sehen, wurde eine Kopie der Tabelle student_details erstellt, jedoch nur mit den ersten fünf stu_id.

Mit dieser Technik können wir je nach Bedarf Teildaten aus einer bestimmten Tabelle klonen. Mit Hilfe der beiden oben genannten Methoden können wir ganz einfach eine Kopie der Quelltabelle erstellen.

Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub

Verwandter Artikel - MySQL Table