Mysqlcommand.ExecuteReaderAsync句柄存储过程,可以返回一个或多个结果集



我有一个存储过程,如果没有错误,它可以返回2组结果。

第一组只是一个正常的select

第二个集合包含错误代码和错误消息,该集合将始终返回一行。由于没有错误,错误码将为0,错误消息将为空。

如果发生错误,

1组结果。这个集合只包含错误代码和错误消息,并且总是只有一行。

在c#中,当我像这样调用这个存储过程时:
var aCommand = new MySqlCommand();
aCommand.CommandText = "my_stored_proc";
aCommand.CommandType = CommandType.StoredProcedure;
aCommand.Parameters.Add("@ErrorCode", MySqlDbType.VarChar);
aCommand.Parameters["@ErrorCode"].Direction = ParameterDirection.Output;
aCommand.Parameters.Add("@ErrorMessage", MySqlDbType.VarChar);
aCommand.Parameters["@ErrorMessage"].Direction = ParameterDirection.Output;
var aReader = await aCommand.ExecuteReaderAsync().ConfigureAwait(false);

aReader只包含存储过程返回的第一组结果。

我的问题是如何得到另一个集合?

aReader.NextResult(); // returns true if there is another result set

相关内容

  • 没有找到相关文章

最新更新