gpt4 book ai didi

c# - MySQL/C# 存储过程不返回值

转载 作者:太空宇宙 更新时间:2023-11-03 12:30:26 26 4
gpt4 key购买 nike

我一直难以从存储过程向 C# 应用程序返回值。该过程在 MySql 工作台而非 C# 中返回一个值。在 C# 输出中没有显示任何值。下面包括我调用的以下过程和方法:

            /*
CREATE PROCEDURE `proc_FindChildID` (OUT CID VARCHAR(6))
BEGIN

SELECT MAX(ChildID) INTO @CID FROM Child;
SET @CID = SUBSTRING(@CID FROM 1);
SELECT @CID;
END //
*/

public bool callProcedure()
{
if (this.OpenConnection() == true)
{
MySqlCommand command = connection.CreateCommand();
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "proc_FindChildID";

command.Parameters.Add(new MySqlParameter("@CID", MySqlDbType.VarChar, 6));
command.Parameters["@CID"].Direction = ParameterDirection.Output;
command.ExecuteNonQuery();

string t_return = command.Parameters["@CID"].Value.ToString();
Console.WriteLine("ID:" + t_return);

this.CloseConnection();
return true;
}
else
{
return false;
}
}

最佳答案

我不知道 MySqlCommand 但通常如果它是 MSSQL 我会调用 object o = command.ExecuteScalar(); 而不是 command.ExecuteNonQuery();获取值(value)。

关于c# - MySQL/C# 存储过程不返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15671329/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com