错误记录-MariaDB连接异常

简介:

问题:

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

相关推荐
m0_736919103 分钟前
超越Python:下一步该学什么编程语言?
jvm·数据库·python
m0_7482299915 分钟前
ThinkPHP快速入门:从零到实战
c语言·开发语言·数据库·学习
阿蒙Amon24 分钟前
C#每日面试题-Thread.Sleep和Task.Delay的区别
java·数据库·c#
沉舟侧畔千帆过_42 分钟前
一个DBA的真心话:搞定Oracle+PG双库,我就靠这招
数据库·oracle·dba
醉风塘43 分钟前
【终极解决方案】Oracle ORA-01795错误:IN列表1000条限制的全面突破指南
数据库·oracle
信创天地44 分钟前
从 Oracle 到国产数据库:迁移后成本直降 60%、性能反超 30% 的实战秘籍
数据库·oracle
Mikhail_G44 分钟前
Mysql数据库操作指南——排序(零基础篇十)
大数据·数据库·sql·mysql·数据分析
沉舟侧畔千帆过_1 小时前
能源核心系统国产化攻坚:智能电网调度系统从 Oracle 到金仓 KES 迁移实录
数据库·oracle·能源·kingbase·金仓数据库
chengrise1 小时前
Oracle EBS 成本异常排查全指南:差异分摊、成本回滚场景与解决方案
运维·数据库·oracle·erp·ebs
wxc0901 小时前
Oracle 性能分析系列:tkprof 工具详解 —— 解码 10046 Trace 的利器
数据库·oracle