Welcome to the Tweaking4All community forums!
When participating, please keep the Forum Rules in mind!
Topics for particular software or systems: Start your topic link with the name of the application or system.
For example “MacOS X – Your question“, or “MS Word – Your Tip or Trick“.
Please note that switching to another language when reading a post will not bring you to the same post, in Dutch, as there is no translation for that post!
MySQL/MariaDB - How to duplicate a table
February 4, 2024 4:11 AM
You can duplicate or "clone" a table's contents by executing a CREATE TABLE ... AS SELECT statement
CREATE TABLE new_table AS SELECT * FROM original_table;
- Cloning a big table can take a lot of time and server resources.
- This approach does not copy indexes, auto_increment definitions etc.
To do a proper clone of a table, where we inherit all table definitions, use the CREATE TABLE ... LIKE syntax.
CREATE TABLE new_table LIKE original_table;
- This copies the structure but DOES NOT copy the data.
To copy the data, you'll need INSERT ... SELECT:
INSERT INTO new_table SELECT * FROM original_table;
Caution: Copying big tables may take a lot of resources!