2013-08-19 28 views
2

我正在嘗試將推文保存到MySql數據庫中,大部分時間內它工作正常,但是當推文像下面給出的人來了,在MySql中保存推文會拋出「錯誤的字符串值:' xF0 x9F x92 xB2 xF0 x9F」

Example 1 Example 2

我從MySQL出現以下情況例外,

java.sql.BatchUpdateException: Incorrect string value: '\xF0\x9F\x92\xB2\xF0\x9F...' for column 'twtText' at row 1 

我們如何處理這樣的文本。

+0

那麼,你如何解決這結束? – RobertG

+0

也在phpMyAdmin,Maria DB 10.1中出現這個錯誤。列和表被設置爲'utf8mb4_unicode_ci',不知道是什麼問題。 –

回答

0

嘗試將您的列字符集更改爲反映您要插入的字符串字符集的值。

實施例:

ALTER TABLE database.table MODIFY COLUMN col VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; 
+0

列已經是utf8mb4 – malhal

0

這適用於我。更改MySql中的字符集

ALTER TABLE TableName MODIFY COLUMN ColumnName varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL; 
0

我得到了相同的發行並解決了它。 錯誤的原因是該字符串包含表情符號。

  1. 設置你的mysql列的字符集,以utf8mb4和校對,以utf8mb4_general_ci
  2. 設置字符集的連接字符串到utf8mb4charset=utf8mb4
  3. OK,測試它
相關問題