Help with accessing DB for general purpose on Active Record

Hello,

I’m converting data from a db to another.
It’s kinda complex migration.
I need to merge some tables into one and change some column values by
rules.

I want to use ActiveRecord instead of DBI (For some reason, on my
ubuntu box, DBI for MySql doesn’t work.)
Modeling is not important here.
And I don’t want to define all models for every table (more than 800
tables).
I just want to use my sql statements for retrieval and update (select/
insert/update…).
So basically, I’m not taking advantage of ActiveRecord.
I’m just using it as DB interface.

Through some research, I figured out how to retrieve data.

ActiveRecord::Base.establish_connection(…)
rows = ActiveRecord::Base.find_by_sql(“select * from table1”)
rows.each do |row|
hash = row.attributes_before_type_cast

end

In this way, row.attributes didn’t work but
attributes_before_type_cast did.

Question 1:
Is there a way to make row.attributes work? And for better, how can I
make row.col_name work?

Question 2:
How can I use insert/update statement?
For example, ActiveRecord::Base.insert_by_sql(“insert into…”)

I googled it already but couldn’t find good examples.

Thanks.

Sam