Por alguna raz贸n desconocida, ten铆a una base de datos SQLite que usaba cadenas codificadas con latin1 en lugar de utf-8. Aqu铆 hay un ejemplo de c贸mo convertirlos usando ruby:
require 'sqlite3'
require 'iconv'
i = Iconv.new('UTF-8', 'LATIN1')
db = SQLite3::Database.new "test.db"
stm = db.prepare "SELECT CompanyName, CustomerID FROM Customers"
rs = stm.execute
rs.each_hash { |row| puts row }
rs.reset
rs.each_hash do |row|
update_str = "UPDATE Customers SET CompanyName = '%s' WHERE CustomerID = '%s';" % [i.iconv(row["CompanyName"]).gsub("'","''"), row["CustomerID"]]
puts update_str
update_stm = db.prepare update_str
update_stm.execute
update_stm.close
end
stm.close
db.close