DATABASE      = 'mask'
CHARACTER_SET = 'utf8mb4'
COLLATION     = 'utf8mb4_bin'

schema = File.open('db/schema.rb', 'r').read
rows = schema.split("\n")
clean_rows = []
rows.each do |ro|
  clean_rows << ro.split(",")
end
table_name = nil
clean_rows.flatten.each do |row|
  if row =~ /create_table/
    table_name = row.match(/create_table "(.+)"/)[1]
    puts "ALTER TABLE `#{DATABASE}`.`#{table_name}` DEFAULT CHARACTER SET #{CHARACTER_SET} COLLATE #{COLLATION};"
  elsif row =~ /t\.string/
    field_name = row.match(/"(.+)"/)[1]
    puts "ALTER TABLE `#{DATABASE}`.`#{table_name}` CHANGE COLUMN `#{field_name}` `#{field_name}` CHARACTER SET #{CHARACTER_SET} COLLATE #{COLLATION};"
  elsif row =~ /t\.text/
    field_name = row.match(/"(.+)"/)[1]
    puts "ALTER TABLE `#{DATABASE}`.`#{table_name}` CHANGE COLUMN `#{field_name}` `#{field_name}` CHARACTER SET #{CHARACTER_SET} COLLATE #{COLLATION};"
  end
end