一只萌萌小番薯
2019-07-08 17:24:58
當試圖通過JDBC將UTF-8插入MySQL時“不正確的字符串值”?我的連接是這樣設置的:Connection conn = DriverManager.getConnection(url + dbName + "?useUnicode=true&characterEncoding=utf-8", userName, password);當鍵入要向表中添加一行時,我將得到以下錯誤:Incorrect string value: '\xF0\x90\x8D\x83\xF0\x90...' for column 'content' at row 1我插入了數(shù)千條記錄,當文本包含\xF0(即不正確的字符串值總是以\xF0開頭)時,我總是會得到這個錯誤。列的排序規(guī)則是UTF 8_General_ci。有什么問題嗎?
3 回答

皈依舞
TA貢獻1851條經驗 獲得超3個贊
utf8
utf8
utf8mb4
character_set_server
utf8mb4
例如,若要在Connector/J中使用4字節(jié)UTF-8字符集,請將MySQL服務器配置為 character_set_server=utf8mb4
,然后離開 characterEncoding
從連接器/J連接字符串中退出。連接器/J將自動檢測UTF-8設置。

精慕HU
TA貢獻1845條經驗 獲得超8個贊
\xF0
ALTER TABLE database.table MODIFY COLUMN col VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
添加回答
舉報
0/150
提交
取消