Я пытаюсь сохранить твит в моей таблице MYSQL. tweet является:Неверное строковое значение: ' xF0 x9F x8E xB6 xF0 x9F ...' MySQL
Quiero дия меня escuches, не т.х burles не тех Риасов, anoche Тьюв ип Sueño дие того Fuiste де ми вид & # x1f3b6; & # x1f3b6;
Последние два символа являются 'MULTIPLE MUSICAL NOTES' (U+1F3B6), для которых кодировка UTF-8 0xf09f8eb6
.
Поле tweet_text
в моей таблице закодировано в utf8mb4
. Но когда я пытаюсь сохранить твит в этой колонке я получаю следующее сообщение об ошибке:
Неправильное значение строки: «\ xF0 \ x9F \ x8E \ XB6 \ xF0 \ x9F ...» для столбца «tweet_text» в строке 1.
Что происходит не так? Как я могу это исправить? Мне нужно также хранить несколько языков, и этот набор символов работает для всех языков, но не для специальных символов, таких как смайлики и эможи.
Это мой создать таблицу заявление:
CREATE TABLE `twitter_status_data` (
`unique_status_id` bigint(20) NOT NULL AUTO_INCREMENT,
`metadata_result_type` text CHARACTER SET utf8,
`created_at` text CHARACTER SET utf8 NOT NULL COMMENT 'UTC time when this Tweet was created.',
`id` bigint(20) unsigned NOT NULL COMMENT 'Unique tweet identifier',
`id_str` text CHARACTER SET utf8 NOT NULL,
`tweet_text` text COMMENT 'Actual UTF-8 text',
`user_id_str` text CHARACTER SET utf8,
`user_name` text COMMENT 'User''s name',
`user_screen_name` text COMMENT 'Twitter handle',
`coordinates` text CHARACTER SET utf8,
PRIMARY KEY (`unique_status_id`),
KEY `user_id_index` (`user_id`),
FULLTEXT KEY `tweet_text_index` (`tweet_text`)
) ENGINE=InnoDB AUTO_INCREMENT=82451 DEFAULT CHARSET=utf8mb4;
ли вы установили набор символов подключения к базе данных в 'utf8mb4'? – eggyal
Извините, что вы подразумеваете под символьным набором подключения к базе данных? Набор символов базы данных - utf8mb4, а сортировка - utf8mb4_general_ci – db1
. Я получаю подобное сообщение об ошибке для этого твита, а также https://twitter.com/OfficialMansi/status/406007380241969152 В конце твита есть смайлик. Сообщение об ошибке: Неверное строковое значение: «\ xF3 \ xBE \ x8D \ x83 h ...» для столбца «tweet_text» в строке 1 – db1