Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
仍在执行过程时读取SQL Server结果集_Sql_.net_Sql Server - Fatal编程技术网

仍在执行过程时读取SQL Server结果集

仍在执行过程时读取SQL Server结果集,sql,.net,sql-server,Sql,.net,Sql Server,我有一个SQL Server存储过程,可以将多个结果集返回到.NET应用程序。出于性能原因,我不想等待所有结果都返回,而是在返回结果集后立即处理它,因此处理和检索其他结果集是并行的 可以使用.NET和SQL Server吗?这是不可能的。在前一条语句完成之前,SQL无法启动该语句。语句直到生成它将生成的整个结果集才结束。结果集是客户端必须使用的流 有许多方法可以并行执行调用,方法是为每个感兴趣的结果发送不同的请求。但这需要您正确地编写应用程序(使用多重连接和异步调用),而存储过程绝对无法完成这项

我有一个SQL Server存储过程,可以将多个结果集返回到.NET应用程序。出于性能原因,我不想等待所有结果都返回,而是在返回结果集后立即处理它,因此处理和检索其他结果集是并行的


可以使用.NET和SQL Server吗?

这是不可能的。在前一条语句完成之前,SQL无法启动该语句。语句直到生成它将生成的整个结果集才结束。结果集是客户端必须使用的流


有许多方法可以并行执行调用,方法是为每个感兴趣的结果发送不同的请求。但这需要您正确地编写应用程序(使用多重连接和异步调用),而存储过程绝对无法完成这项工作。

为什么并行?您可以简单地使用
SqlDataReader
一次读取一个结果集的所有记录,然后使用前进到下一个结果集。我不相信您可以通过.NET应用程序这样做,因为一旦存储过程完成执行,数据就会返回。(但是,可能有一种方法,正如SSMS在结果窗口中所做的那样)
SqlDataReader
将是最好的选择,或者将要处理的数据分割成更小的数据块。@TimSchmelter是的,你是对的,我的大脑显然是一团糟!