Skip to content
Advertisement

Duplicate a record in MySQL

I have a table and I want to duplicate specific rows in the table. I know this is not the best way to do things but we are looking for a quick solution.

Here’s something harder than I initially thought, all I need to do is copy an entire record to a new record in an auto-increment table in MySql without the need to specify each field. This is because the table can change in future and might break duplication. I will be duplicating MySQL records from PHP.

It is a problem because in a ‘SELECT * ‘ query MySql will try to copy the ID of the record being copied which genenerates a duplicate ID error.

This blocks out: INSERT INTO customer SELECT * FROM customer WHERE customerid=9181. It also blocks out INSERT INTO customer (Field1, Field2, ...) SELECT Field1, Field2, ..... FROM customer WHERE customerid=9181.

Is there a way to do this from PHP or MySQL?

Advertisement

Answer

I finally found this code. I am sure it will help people in the future. So here it is.

Here is the link to the article http://www.epigroove.com/posts/79/how_to_duplicate_a_record_in_mysql_using_php

User contributions licensed under: CC BY-SA
5 People found this is helpful
Advertisement