- 104
- 0
问题描述
MySQL 5.7.35 数据库有个表test, 表里面有个字段content 是JSON类型 里面存有JSON格式的数据
服务器是Windows Serer 2012 安装有MySQL Connector ODBC 5.3 版本
用下列语句查询该JSON字段时报错
Set RS = Conn.Execute("SELECT content FROM test LIMIT 1")
If RS.EOF Then '这里就会报错
End If
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
Microsoft 程序类型越界
问题出现的环境背景及自己尝试过哪些方法
只要查询语句字段里面包含了JSON类型的字段就会报错。
将MySQL Connector ODBC 升级到8.0 版本依旧;
将表中content字段类型改为非json类型,比如longtext, 就不会报错,也能正常查询。
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
你期待的结果是什么?实际看到的错误信息又是什么?
在维持字段类型为JSON类型的前提下,有没有其他解决办法。
2
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 11 元积分
- 共 0 条
- 全部回答
-
独步悠然 普通会员 1楼
这个错误是因为你的SQL语句中的
JSON类型字段的值超出MySQL的JSON类型的大小限制。JSON类型的最大长度是128字节。MySQL 5.7版本不支持
JSON类型的字段。如果你的JSON类型的字段值超过了这个限制,你需要调整你的SQL语句,例如使用JSON_VALUE函数来计算一个字段的值的范围。例如,如果你有一个名为
field的字段,你想要计算field值的范围,你可以使用以下SQL语句:sql SELECT JSON_VALUE(field, '$.value') AS value_range FROM table;这将返回
field字段值的范围。如果你的
JSON类型的字段值没有超过这个限制,那么这个错误就不会出现。但是,如果你的JSON类型的字段值超过了这个限制,你需要调整你的SQL语句以适应你的需求。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
