我正在使用 ADO.NET 数据提供程序 MySql.Data.MySqlClient
从 .NET Core 访问 MySQL 数据库,并且大多数功能都可以正常工作,但是每当我尝试访问存储过程时,我都会看到以下异常消息:
MySql.Data.MySqlClient.MySqlException : Table 'mysql.proc' doesn't exist
我能找到的所有文章都建议运行mysql_upgrade
来修复系统表,但这没有发现任何问题。
事实上,数据库不包含 mysql.proc
表 - 但 it is not supposed to since it is MySQL 8.0 !
我已使用 MySQL 安装程序安装了最新版本的 Connector/NET (8.0.15)。
我做错了什么?
最佳答案
安装的 Connector/NET 版本...无关紧要!
这是 .NET Core,.NET Core 的 ADO.NET 数据提供程序是通过 NuGet 获取的 - 因此请确保您的 .NET Core 项目正在加载最新版本的 MySql.Data
NuGet 包。
旧版本的 MySql.Data
NuGet 包(v.8 之前的版本)在尝试访问版本 8+ MySQL 数据库上的存储过程时确实会出现上述错误。
关于mysql - "MySqlException: Table ' mysql.proc ' doesn' t 存在”在.NET Core中执行MySQL存储过程时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55290077/