It seems strange to me, that creation of model, running migration, destroying it, and creating again same model reports SQL exception:
project|master ⇒ rails g m
rails d model name
This just deletes the model and not the migration you have run (which created the table in the database).
If you want to delete both the model and the tables, you will have to do the following
rake db:rollback rails d model name