当字段设置为 uft8mb4_general_ci 时出现错误 "Source character set not supported by client"

Error "Source character set not supported by client" when field set to uft8mb4_general_ci

此错误是 Windows MariaDB 驱动程序问题吗?

[MySQL][ODBC 5.1 Driver][mysqld-5.5.5-10.2.12-MariaDB]Source character set not supported by client

我在尝试使用此 asp 代码进行连接时不断收到错误消息:

Set rs = Server.CreateObject("ADODB.Recordset")
rs.ActiveConnection = Connection_STRING
rs.Source = "SELECT * FROM mytable WHERE text-str = 'some text'
rs.CursorType = 1
rs.CursorLocation = 2
rs.LockType = 1
rs.Open()
if (rsL.EOF) then
    ...
end if
rs.Close()
Set rs = Nothing

只有在将 text-str 数据类型形式 VARCHAR 更改为 TEXT 之后,事情才开始起作用。

但一段时间后我发现无法从 table 获取任何文本。我可以保存到它,但不能取回它。

经过更多搜索,我终于能够通过将字段的默认排序规则从 uft8mb4_general_ci 更改为 uft8_general_ci 来解决错误。现在 VARCHAR 也可以了。


我在一个Wordpress插件后启动的错误update/removal。这不知何故改变了数据库的一些默认设置,我连接它的方式不再有效。

安装更新的 ODBC 驱动程序解决了它。