Свертывание utf8_general_ci не работает на Heroku - PullRequest
0 голосов
/ 08 ноября 2018

Я использую библиотеку Exposed от JetBrains с подключением к базе данных MySQL. В моей базе данных мне нужно использовать поле кодировки UTF-8, поэтому я использую сопоставление utf8_general_ci. Я протестировал его в своей локальной базе данных, и он прекрасно работает, но когда я запускаю тот же код в базе данных Heroku, вместо символов UTF-8 у меня появляются вопросительные знаки. Вот мой объект схемы:

object UserMessage : Table() {
  val id = varchar("id", 20).primaryKey()
  val channelId = varchar("channel_id", 20)
  val content = varchar("content", 2000, collate = "utf8_general_ci")
  val creatorId = varchar("creator_id", 20).nullable()
  val creationDate = varchar("creation_date", 26)
}

Сценарий создания для обеих баз данных одинаков и выглядит следующим образом:

CREATE TABLE `usermessage` (
  `id` varchar(20) NOT NULL,
  `content` varchar(2000) NOT NULL,
  `channel_id` varchar(20) NOT NULL,
  `creation_date` varchar(26) NOT NULL,
  `creator_id` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Что я должен сделать, чтобы кодирование работало на Heroku?

...