Как исправить «Внутреннюю ошибку сервера» при сохранении смайликов с текстом - PullRequest
0 голосов
/ 02 января 2019

Я делаю RESTful API для мобильных устройств и использую node js для. Моя база данных MySQL 5.7.24. Но когда любой запрос с Emojis в нем бросает "Internal server error". Я изменил всю базу данных на utf8mb4 и столбцы на utf8mb4_unicode_ci. Где я ошибаюсь?

т.е: Предположим, что у моего table есть два столбца (Id, Review), когда я получаю запрос на данные, такие как (2,'OkThisIsFine'), он работает, но когда запрос похож на (3,'ThisIsNOTwork☹'), тогда он показывает "Internal server error".

1 Ответ

0 голосов
/ 04 января 2019

11-й комментарий, наконец, дает достаточно информации, чтобы ответить на вопрос.

Когда вы создали эту хранимую процедуру, вы не использовали utf8mb4. Чтобы доказать это (или сбить мой ответ), сделайте SHOW CREATE PROCEDURE proc_name. Ближе к концу он скажет, например character_set_client: utf8. Перестройте его:

DROP PROCEDURE ...;
SET NAMES utf8mb4;
DELIMITER //
CREATE ... PROCEDURE ...
//
DELIMITER ;
...