Исправление странных символов в базе данных с помощью Java-запроса Spring - PullRequest
0 голосов
/ 24 апреля 2019

Я использую API новостей для вставки статей в базу данных.Всякий раз, когда есть кавычки или апострофы, он все портит, помещая туда эти странные символы.Я нашел в Интернете запросы, которые их исправляют, но мне нужно, чтобы они были автоматизированы, потому что я вставляю новые статьи каждые 5 часов.Я написал запрос в Java в моем @Repository, чтобы исправить заголовок и описание статьи.Запрос работает в MYSQL Workbench, но когда я пытаюсь запустить его на своем Java-сервере, он не работает.Вот запрос:

@Modifying
  @Transactional
  @Query(
      value =
          "UPDATE networthr.articles SET description = REPLACE(description, '“', '“');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, 'â€�', '”');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, '’', '’');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, '‘', '‘');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, '—', '–');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, '–', '—');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, '•', '-');\n"
              + "UPDATE networthr.articles SET description = REPLACE(description, '…', '…');\n"
              + "\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '“', '“');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, 'â€�', '”');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '’', '’');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '‘', '‘');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '—', '–');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '–', '—');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '•', '-');\n"
              + "UPDATE networthr.articles SET title = REPLACE(title, '…', '…');", nativeQuery = true)
  void fixArticles();

Когда я пытаюсь выполнить этот запрос, он говорит об ошибке синтаксиса SQL в строке 1, но я знаю, что он не работает ни в одной из строк.

Спасибо за любые ответы.

...