English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQL-Tabelle kopieren

In diesem Tutorial lernen Sie, wie Sie eine Kopie einer bestehenden Tabelle erstellen.

Tabelle klonen oder kopieren

In einigen Fällen möchten Sie möglicherweise nur eine genaue Kopie oder einen Klon einer bestehenden Tabelle erstellen, um Tests oder bestimmte Aktionen durchzuführen, ohne die ursprüngliche Tabelle zu beeinflussen.

Das nächste Kapitel erläutert anhand einiger einfacher Schritte, wie man diese Operation durchführt.

Schritt1:Erstellen Sie eine leere Tabelle

Erstellen Sie zunächst eine leere Tabelle mit folgendem Befehl, basierend auf der Definition der ursprünglichen Tabelle. Dies umfasst auch die Spaltenattribute und Indizes der ursprünglichen Tabelle:

CREATE TABLE new_table LIKE original_table;

Schritt2:Daten in die Tabelle einfügen

Jetzt füllen Sie die leere Tabelle mit den Daten aus der ursprünglichen Tabelle mit folgendem Befehl:

INSERT INTO new_table SELECT * FROM original_table;

Lassen Sie uns das MySQL-Command-Line-Tool verwenden, um die Tabelle zu клонировать.

Denken wir an unsemployeesenthaltenen Datenbank hat eine Tabelle mit folgenden Einträgen:

+--------+--------------+------------+--------+---------+
| emp_id | emp_name     | hire_date  | salary | dept_id |
+--------+--------------+------------+--------+---------+
|      1 | Ethan Hunt   | 2001-05-01 |   5000 |       4 |
|      2 | Tony Montana | 2002-07-15 |   6500 |       1 |
|      3 | Sarah Connor | 2005-10-18 |   8000 |       5 |
|      4 | Rick Deckard | 2007-01-03 |   7200 |       3 |
|      5 | Martin Blank | 2008-06-24 |   5600 |    NULL |
+--------+--------------+------------+--------+---------+

Führen Sie den folgenden SQL-Befehl aus, der auf der bestehendenemployeesDie Definition der Datenbanktabelle erstellt eine leere Tabelleemployees_clone.

 employees_clone  employees;

Jetzt führen Sie einen anderen SQL-Befehl aus, der alle Einträge aus der Tabelle employee in die Tabelle employees_clone einfügt. Nach Ausführung dieses Befehls erhalten Sie die Tabelle employee_clone, die eine genaue Kopie oder eine Kopie der Tabelle employee ist.

 employees_clone  *  employees;

Einfache Klonung

Wenn Sie jedoch nur eine Tabelle von einer anderen Tabelle erstellen möchten, ohne dabei jegliche Spaltenattribute und Indizes zu berücksichtigen, können Sie eine einfache Zeile verwenden:

CREATE TABLE new_table SELECT * FROM original_table;

Die folgenden Befehle erstellenemployeeseinfache Kopie der Tabelle.

 employees_dummy  *  employees;

Hinweis:Verwenden Sie die Syntax CREATE TABLE ... SELECT, um schnell eine einfache Kopie jeder Tabelle zu erstellen, die nur die Struktur und Daten der Quelletabelle enthält.