gpt4 book ai didi

mysql - mysql 表中带有变音符号 - Ç - 的数据

转载 作者:行者123 更新时间:2023-11-29 18:27:52 24 4
gpt4 key购买 nike

我试图确定每晚加载 MySQL 表的 java 程序中的错误。

Error in the log was java.sql.SQLException: Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' for column 'manager' at row 1.

最终确定数据中有一个新名称(从平面文件加载) - FRANÇOIS - 并且是变音符号给出了错误。程序仍然加载所有内容,只是将该字段留空。

当我运行SHOW FULL COLUMNS FOR tablename时,它是latin1_swedish_ci。我对排序规则、字符集知之甚少。我应该将排序规则更改为什么才能让它接受这一点?

最佳答案

(渴望发表评论)

需要查看更多详细信息。

不要使用latin1;使用utf8。

getConnection() 调用中使用 ?useUnicode=yes&characterEncoding=UTF-8 连接

在表和/或列定义中使用CHARACTER SET utf8。请提供SHOW CREATE TABLE以进行确认。

EFBFBD 是“替换”字符,意味着您收到了垃圾。

加载平面文件 -- 您能从文件中获取 Ç 的十六进制吗?如果是 C7,则为 latin1,您应该在加载时指定 latin1。是加载数据吗?还是别的什么?

如果是C387那么就是utf8;很好。

更多讨论、调试、最佳实践等:Trouble with utf8 characters; what I see is not what I stored

术语:“排序规则”(例如,latin1_swedish_ci)是指排序顺序。您的问题出在“字符集”(例如,latin1 或 utf8)。

关于mysql - mysql 表中带有变音符号 - Ç - 的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46005018/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com