Redefining rename_column?

I would like to prevent rename_column from working in certain
circumstances, so I was trying to redefine rename_column. However, it
seems that the adapter's definition loads afterward and wipes out what
I put in. I have successfully overridden add_column, so I am
confident that I have the definition in the right module. Is there a
way to force the database adapter to load, so I can override is
(adapter-specific) rename_column? (I guess I might be able to
override each database-specific rename_column, but I don't like that


Some of the tables in our system hold data entered by users of the web
site. I am trying to stop one of us (developers) from shooting
ourselves in the foot by accidentally modifying those tables in a way
that would lose data. My plan is to capture calls to table change
commands, record some of them (e.g. add_column) so that they can be
played back later on the production database, and prohibit others
(e.g. remove_column).