【问题标题】:ASP.NET says FUNCTION does not exist when calling stored procedureASP.NET 调用存储过程时说 FUNCTION 不存在
【发布时间】:2014-02-19 03:32:09
【问题描述】:

ADO.NET 被用于访问我的应用程序中的 MySQL 数据库。一些存储过程是在外部开发的。我将它们应用于数据库。尝试访问数据库中的存储过程时,出现以下异常:

FUNCTION your_db.log_insertLogMessage 不存在

调用此代码时:

MySqlCommand cmd = CreateCommand(procName, prams);
return cmd.ExecuteNonQuery();

procName 是设置正确的字符串。 Prams 是 MySqlParameter 数组。在调试器中,“?”在 Visual Studio 中展开时,为数组值显示。

似乎可以毫无问题地访问数据库。我将数据库名称更改为虚拟名称,但出现了关于数据库不存在的不同错误。

我删除了所有存储过程并收到一个新错误,指出具有给定名称的函数或存储过程不存在。

然后我重新应用了存储过程,我现在又回到了原来的错误。存储过程的代码是:

CREATE DEFINER=`root`@`localhost` PROCEDURE `log_insertLogMessage`<br>
(IN `Name` varchar(100), IN `Description` varchar(5000), IN `Message` varchar(5000)
)

begin

INSERT INTO DBlog(UserName, Descr, LogMessage, WhenOccurred) values(Name, Description, Message, CURDATE());

end

我可以在 MySQL 本身中毫无问题地调用存储过程。

我错过了什么?

【问题讨论】:

    标签: mysql asp.net stored-procedures


    【解决方案1】:

    我发现了问题所在。我不得不切换到旧版本的 mySql.data.dll。数据库设置正确,代码也没问题。这只是一个连接器问题。

    【讨论】:

      猜你喜欢
      • 2018-04-14
      • 1970-01-01
      • 2023-03-09
      • 2011-12-11
      • 2016-05-01
      • 1970-01-01
      • 2013-11-23
      • 1970-01-01
      相关资源
      最近更新 更多