我有一个包含多个选择的存储过程,如下所示:
select 'Connected'
exec DoWork
@var1 = 23,
@var2 = 400
select 'Done'
select 'Bye'
当我从C#代码调用存储过程时,我只在SqlDataReader
中获得一个结果,并且它是'已连接'选择。
我称之为
SqlCommand command = connection.CreateCommand();
command.CommandType = System.Data.CommandType.StoredProcedure;
command.CommandText = "SP_MyProc";
command.Parameters.Add("@val", "TEST");
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
string temp = "";
for (int i = 0; i < reader.FieldCount; i++)
{
temp += reader.GetString(i) + " ";
}
worker.ReportProgress(0, temp);
}
connection.Close();
通常存储过程只返回一个结果集是有道理的,但我需要这个用于调试目的。有可能吗?