Comments needed => Small patch to fix a drop_column issue with sqlite

http://rails.lighthouseapp.com/projects/8994/tickets/1766-patch-sqlite-adapters-copy_table-should-not-set-id-true-if-id-is-not-a-primary-key

Sqlite adapter's copy_table should not set :id => true if :id is not a primary key.

We had a legacy table with a string id. Changing the table was not a good option, according to people more important than me. We had to maintain this structure in development, so created an id column that was not a primary_key.

Later I tried to call: remove_column :table, :value

And upon calling remove_column, the whole thing blew up. When SQLiteAdapter tried to call copy_table, it set :id => true and wrote over the original id column.

The patch will set :id => false if there is an :id column, but it's not a primary_key.