Best way to copy a table using ActiveRecord

Seriously,
The best way to ahieve this is in a stored procedure in the database.

Just create a method on your model class that will run the stored proc,
that way your controllers and rake tasks etc... can have access to the
functionality if you want them to
.
Let the database do the job it's designed to do and let your models do
their bit, you will get a much better performance.