【发布时间】:2012-12-02 05:24:22
【问题描述】:
我正在使用带有 .Net 连接器 (6.5.4) 的 Mysql (5.5.27),当我尝试插入一些数据时,出现以下错误。
Incorrect string value: '\xF3\xB6\xA5\x89f'...' for column 'STACK_TRACE' at row 1
我已经在堆栈溢出方面进行了足够多的搜索,并尝试按照数据库、表和列的字符集和排序规则。
- 'utf8' 'utf8_general_ci'
- 'utf8' 'utf8_unicode_ci'
- 'utf8mb4' 'utf8mb4_general_ci'
- 'utf8mb4' 'utf8mb4_unicode_ci'
我已在连接字符串中正确设置了 'charset=utf8'。
- 那个特定的 unicode 字符有什么问题吗?我无法控制这些数据,这些数据是从许多 Android 手机中收集的。
- 是mysql的bug吗?
【问题讨论】:
-
当您将表以及数据库和列全部设置为
'utf8mb4',并将排序规则设置为'utf8mb4_unicode_ci'时,您能否确认错误仍然存在?我只是确定您尝试过这种情况,而不仅仅是字符集和排序规则排列的示例。 -
@JimDeLaHunt:唯一重要的是列的字符集?