SQL - Kloniranje tabela


Kloniranje ili kopiranje tabele

Možda postoji situacija kada samo želite stvoriti tačnu kopiju ili klon postojeće tabele kako biste nešto testirali ili izveli bez uticaja na originalnu tabelu. Sljedeći dio opisuje kako to učiniti u nekoliko jednostavnih koraka.


Korak 1: Stvaranje prazne tablice

Prvo upotrijebite sljedeću naredbu za stvaranje prazne tabele na temelju definicije izvorne tabele. Takođe uključuje atribute kolona i indekse definisane u izvornoj tabeli:

CREATE TABLE new_table LIKE original_table;

Korak 2: Umetanje podataka u tabelu

Sada upotrijebite sljedeću naredbu da popunite praznu tabelu podacima iz izvorne tabele:

INSERT INTO new_table SELECT * FROM original_table;

Napravimo klon tabele koristeći alat MySQL naredbenog reda. Uzmimo u obzir da u našoj bazi podataka imamo tabelu zaposlenih koja ima sljedeće zapise:



Izvršite sljedeći SQL izraz, stvorit će praznu tabelu employees_clone na temelju definicije postojeće tabele baze podataka zaposlenih.

mysql> CREATE TABLE employees_clone LIKE employees;

Sada izvršite drugu SQL naredbu koja ubacuje sve zapise iz tabele zaposlenih u tabelu employees_clone. Nakon izvršavanja ove izjave dobit ćete tabelu employees_clone koja je tačna kopija ili duplikat tabele zaposlenih.

mysql> INSERT INTO employees_clone SELECT * FROM employees;


Jednostavno kloniranje

Međutim, ako samo želite stvoriti tabelu iz druge tabela bez uzimanja u obzir atributa i indeksa kolona, možete koristiti jednostavni izraz u jednom redu:

CREATE TABLE new_table SELECT * FROM original_table;

Sljedeća naredba kreira jednostavnu kopiju tabele zaposlenih.

mysql> CREATE TABLE employees_dummy SELECT * FROM employees;