翼度科技»论坛 编程开发 mysql 查看内容

错误记录-MariaDB连接异常

3

主题

3

帖子

9

积分

新手上路

Rank: 1

积分
9
简介:

问题:

  C#,VS2022,mariadb-10.11.5-winx64,using MySql.Data.MySqlClient;
  在执行connection.Open()时抛出异常:System.InvalidCastException:“Object cannot be cast from DBNull to other types.”
By MaQaQ 2023-11-22
分析:

原因:

  MySql.Data 加载排序规则的方法假定“id"列的值不为空,而从 10.10 版本开始,MariaDB 将“id”列切换为"Allow Null",并且在 Colations 中有很多行带有 NULL id, 这会导致“Object cannot be cast from DBNull to other types.”异常。
解决方案:

1、回滚MariaDB版本到10.9

MariaDB Server下载地址:https://mariadb.org/mariadb/all-releases/
找到版本10.9.8:

镜像源选择阿里云,点击Download:

 在控制面板中将之前的MariaDB卸载,然后安装10.9.8版本即可,卸载前可以用HeidiSQL将原来的数据库导出成sql脚本,然后重装后再执行sql导入。
2、将MySql.Data.MySqlClient换成MysqlConnector
直接在NuGet中搜索即可:

总结:

1、回滚MariaDB版本到10.9或之前
2、换成MysqlConnector

来源:https://www.cnblogs.com/magicMaQaQ/p/17848084.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具