Mysql即使使用utf8mb4也不正确的字符串值

时间:2018-09-12 08:12:11

标签: mysql character-encoding

Mysql版本:WAMP服务器上的8.0.12(Apache 2.4.33)

我在my.ini中添加了(然后多次重新启动mysql):

[mysql]
default-character-set=utf8mb4

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

我有一个带有列stores的mysql表coordinates varchar(255) utf8mb4_unicode_ci

我在尝试更新stores列时收到此错误:

SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xFAC3OJ]...' for column 'coordinates' at row 1 (SQL: update `stores` set `updated_at` = 2018-09-12 11:01:48, `coordinates` = ST_GeomFromText('POINT(-117.161084 32.715738)') where `id` = 3)

我在做什么错了?

我直接在phpMyAdmin中尝试了查询,但出现了相同的错误。

1 个答案:

答案 0 :(得分:2)

coordinates的数据类型不能为字符串, 就像varchar(255)中一样,只是几何形状。

请参见https://dev.mysql.com/doc/refman/8.0/en/spatial-type-overview.html